Manejo de Ficheros en JAVA
description
Transcript of Manejo de Ficheros en JAVA
![Page 1: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/1.jpg)
CREACIÓN, LECTURA Y ESCRITURA DE FICHEROS EN JAVA.
Manejo de Ficheros en JAVA
JOSÉ LUIS REDONDO GARCÍA. GRUPO QUERCUS ENGINEERING SOFTWARE,
UEX
![Page 2: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/2.jpg)
2
Índice
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.
![Page 3: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/3.jpg)
3
Introducción
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.*;
![Page 4: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/4.jpg)
4
Introducción
Stream de Entrada:
Stream de Salida:
![Page 5: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/5.jpg)
5
Paquete java.io (I)
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.
![Page 6: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/6.jpg)
6
Paquete java.io (II)
![Page 7: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/7.jpg)
7
Paquete java.io (III)
![Page 8: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/8.jpg)
8
Paquete java.io (III)
![Page 9: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/9.jpg)
9
Byte streams (I)
Operan con bytes(8 bits).La lectura se define en la clase InputStream,
mientras que la escritura se define en la clase OutputStream.
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.
![Page 10: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/10.jpg)
10
Byte streams (II)
Métodos de lectura (InputStream): int read(); int read(byte[] b); int read(byte[] b, int off, int len);
Métodos de escritura (OutputStream): void write(intb); void write(byte[] b); void write(byte[] b, int off, intlen);
•Apertura con el constructor.•Cierre con el método:
public void close() throws IOException;
![Page 11: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/11.jpg)
11
Byte streams (III)
Filtros: Clases para filtrar la información en los streams. Heredan de FilterInputStream o FilterOutputStream. Se usan asociándolas con un stream básico.
Ejemplos: FileInputStreamTest.java, FileOutputStreamTest.java ByteArrayInputStreamTest.java DataInputStreamTest.java, PrintStreamTest.java
![Page 12: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/12.jpg)
12
Char Streams (I)
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.
![Page 13: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/13.jpg)
13
Char Streams (I)
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.
![Page 14: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/14.jpg)
14
Char Streams (II)
Métodos de lectura (Reader): int read(); int read(char[] b); int read(char[] b, int off, intlen);
Métodos de escritura (Writer): void write(intc); void write(char[] b); void write(char[] b, int off, intlen);
Apertura con el constructor.Cierre con el método:
public void close() throws IOException;
![Page 15: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/15.jpg)
15
Char Streams (III)
Filtros: Clases para filtrar la información en los streams. Heredan de FilterReader o FilterWriter. Se usan asociándolas con un streambásico.
Ejemplos: FileReaderTest.java, FileWriterTest.java Cat.java AppletFile.java, AppletFile.htm
![Page 16: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/16.jpg)
16
Tratamiento de Ficheros
Clase File: Permite el acceso convencional a los ficheros. Incluye métodos para el tratamiento de los atributos.
Clase FileDescriptor: 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.
![Page 17: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/17.jpg)
17
Procesado de Tokens
Clase StreamTokenizer: Permite el tratamiento de tokens de Java desde un
streamde entrada. Se trata de un filtro.
Clase StringTokenizer: Similar a la anterior, pero toma los datos de un
String.Ejemplos:
![Page 18: Manejo de Ficheros en JAVA](https://reader036.fdocumento.com/reader036/viewer/2022082822/56815b21550346895dc8e0b9/html5/thumbnails/18.jpg)
18
Acceso directo a Ficheros
Clase RandomAccessFile: 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: