Manejo de Ficheros en JAVA CREACIN LECTURA Y

  • Slides: 18
Download presentation
Manejo de Ficheros en JAVA CREACIÓN, LECTURA Y ESCRITURA DE FICHEROS EN JAVA. JOSÉ

Manejo de Ficheros en JAVA CREACIÓN, LECTURA Y ESCRITURA DE FICHEROS EN JAVA. JOSÉ LUIS REDONDO GARCÍA. GRUPO QUERCUS ENGINEERING SOFTWARE, UEX

Índice 2 �Introducción. �Paquete java. io. *: 2. 1. Byte streams. 2. 2. Char

Índice 2 �Introducción. �Paquete java. io. *: 2. 1. Byte streams. 2. 2. Char streams. � Tratamiento convencional de ficheros. � Procesado de tokens. � Acceso directo a ficheros. � 3. E/S estándar. � 4. Serialización. � 5. Ejemplos y Ejercicios.

Introducción 3 �La E/S en Java se gestiona mediante streams. �Por un stream (canal

Introducción 3 �La E/S en Java se gestiona mediante streams. �Por un stream (canal o flujo) fluye la información desde un origen hacia un destino: Se lee o crea desde el origen. Se escribe o envía hacia el destino. �Los streams se manejan de forma independiente del origen y destino concretos. �También existen clases para E/S de ficheros no orientadas a streams. �Se definen en la librería java. io. *;

Introducción 4 �Stream de Entrada: �Stream de Salida:

Introducción 4 �Stream de Entrada: �Stream de Salida:

Paquete java. io (I) 5 � El paquete java. iose encuentra organizado en las

Paquete java. io (I) 5 � El paquete java. iose encuentra organizado en las siguientes jerarquías de clases: Streams orientados a bytes. Streams orientados a chars. Tratamiento convencional de ficheros. Procesado de tokens. Acceso directo a ficheros.

Paquete java. io (II) 6

Paquete java. io (II) 6

Paquete java. io (III) 7

Paquete java. io (III) 7

Paquete java. io (III) 8

Paquete java. io (III) 8

Byte streams (I) 9 � Operan con bytes(8 bits). � La lectura se define

Byte streams (I) 9 � Operan con bytes(8 bits). � La lectura se define en la clase Input. Stream, mientras que la escritura se define en la clase Output. Stream. � Estas clases son abstractas. � Sus herederas definen fuentes y destinos de datos concretas. � Se dividen en dos grupos: E/S básica E/S filtrada.

Byte streams (II) 10 � Métodos de lectura (Input. Stream): int read(); int read(byte[]

Byte streams (II) 10 � Métodos de lectura (Input. Stream): int read(); int read(byte[] b, int off, int len); � Métodos de escritura (Output. Stream): void write(intb); void write(byte[] b, int off, intlen); � • Apertura con el constructor. � • Cierre con el método: public void close() throws IOException;

Byte streams (III) 11 �Filtros: Clases para filtrar la información en los streams. Heredan

Byte streams (III) 11 �Filtros: Clases para filtrar la información en los streams. Heredan de Filter. Input. Stream o Filter. Output. Stream. Se usan asociándolas con un stream básico. �Ejemplos: File. Input. Stream. Test. java, File. Output. Stream. Test. java Byte. Array. Input. Stream. Test. java Data. Input. Stream. Test. java, Print. Stream. Test. java

Char Streams (I) 12 �Operan con chars (16 bits). �La lectura se define en

Char Streams (I) 12 �Operan con chars (16 bits). �La lectura se define en la clase Reader, mientras que la escritura se define en la clase Writer. �Estas clases son abstractas. �Sus herederas definen fuentes y destinos de datos concretas. �Se dividen en dos grupos: E/S básica E/S filtrada.

Char Streams (I) 13 �Operan con chars (16 bits). �La lectura se define en

Char Streams (I) 13 �Operan con chars (16 bits). �La lectura se define en la clase Reader, mientras que la escritura se define en la clase Writer. �Estas clases son abstractas. �Sus herederas definen fuentes y destinos de datos concretas. �Se dividen en dos grupos: E/S básica E/S filtrada.

Char Streams (II) 14 � Métodos de lectura (Reader): int read(); int read(char[] b,

Char Streams (II) 14 � Métodos de lectura (Reader): int read(); int read(char[] b, int off, intlen); � Métodos de escritura (Writer): void write(intc); void write(char[] b, int off, intlen); � Apertura con el constructor. � Cierre con el método: public void close() throws IOException;

Char Streams (III) 15 � Filtros: Clases para filtrar la información en los streams.

Char Streams (III) 15 � Filtros: Clases para filtrar la información en los streams. Heredan de Filter. Reader o Filter. Writer. Se usan asociándolas con un streambásico. � Ejemplos: File. Reader. Test. java, File. Writer. Test. java Cat. java Applet. File. java, Applet. File. htm

Tratamiento de Ficheros 16 � Clase File: Permite el acceso convencional a los ficheros.

Tratamiento de Ficheros 16 � Clase File: Permite el acceso convencional a los ficheros. Incluye métodos para el tratamiento de los atributos. � Clase File. Descriptor: Clase que representa un handler(manejador) de un descriptor de un fichero del Sistema Operativo. Representa a un fichero abierto, e incluye su estado. Su uso es casi automático. � Ejemplos: Attr. java: Información sobre atributos de ficheros. Dir. java: Directorio recursivo.

Procesado de Tokens 17 � Clase Stream. Tokenizer: Permite el tratamiento de tokens de

Procesado de Tokens 17 � Clase Stream. Tokenizer: Permite el tratamiento de tokens de Java desde un streamde entrada. Se trata de un filtro. � Clase String. Tokenizer: Similar a la anterior, pero toma los datos de un String. � Ejemplos:

Acceso directo a Ficheros 18 �Clase Random. Access. File: Acceso de lectura/escritura a ficheros

Acceso directo a Ficheros 18 �Clase Random. Access. File: Acceso de lectura/escritura a ficheros (NO a streams). �Permite: Leer y escribir tipos primitivos de Java y arrays de bytes en binario. Controlar la posición del puntero del fichero. �Ejemplos: