Download 05 Gestion de ficheros de texto en Java

Document related concepts
no text concepts found
Transcript
Escuela Politécnica Superior de Ingeniería
Departamento de Ingeniería Informática
Fundamentos de la informática
5. Gestión de ficheros de texto en Java
Contenido
Introducción
La clase PrintWriter
La clase File
Gestión de ficheros de texto en Java
2
Introducción
Ficheros de datos
Un fichero permite almacenar datos
secundaria para utilizarlos en el futuro
en
memoria
Un fichero puede ser de entrada (input) o salida (output)
dependiendo de si se utiliza para leer o escribir datos
En Java existen dos tipos de ficheros: ficheros binarios y
ficheros de texto
La clase PrintWriter se utiliza para escribir en ficheros de
texto. La clase File se utiliza para leer ficheros de texto
Gestión de ficheros de texto en Java
3
La clase PrintWriter
La clase PrintWriter de la librería java.io
Para usar la clase PrintWriter es necesario incluir la
librería Input-Output de Java
import java.io.*;
La clase PrintWriter permite escribir en un fichero con los
métodos print y println
print
println
escribe en el fichero sin saltar de línea
escribe en el fichero y añade un salto de línea
Gestión de ficheros de texto en Java
4
La clase PrintWriter
La clase PrintWriter de la librería java.io
Para escribir en un fichero de texto, es necesario crear un
objeto de tipo PrintWriter
PrintWriter fichero = new PrintWriter("Calificaciones.txt");
Si el nombre del fichero existe, al crear el objeto el
contenido del fichero se borrará
Antes de escribir datos en un fichero de texto es
necesario abrirlo, a continuación escribir en él y,
finalmente, cerrarlo
Gestión de ficheros de texto en Java
5
La clase PrintWriter
Escritura en un fichero de texto
Para escribir en un fichero de texto:
1. Abrir el fichero con un objeto de la clase PrintWriter
2. Escribir los datos en el fichero utilizando los métodos
print y println
3. Cerrar el fichero
Gestión de ficheros de texto en Java
6
La clase PrintWriter
Escritura en un fichero de texto
PrintWriter fichero = new PrintWriter("MisAmigos.txt");
fichero.println("Juan");
fichero.println("Jesús");
fichero.println("Miguel");
fichero.close();
Gestión de ficheros de texto en Java
7
La clase File
La clase File y la clase Scanner
Para leer de un fichero de texto se utiliza la clase File y
la clase Scanner
Para leer los datos almacenados en el fichero es
necesario utilizar un bucle. Normalmente se utiliza el
while hasta que se llega al final del fichero (eof)
En Java, para detectar el final de un fichero se usa el
método hasNext() de la clase Scanner. Este método
devuelve false cuando se llega al final del fichero (eof)
Gestión de ficheros de texto en Java
8
La clase File
Lectura de un fichero de texto
Para leer la información almacenada en un fichero de texto:
1. Abrir el fichero con un objeto de la clase File y vincularlo
con un objeto de la clase Scanner
2. Leer el fichero
3. Cerrar el fichero
Gestión de ficheros de texto en Java
9
La clase File
Lectura de un fichero de texto
File fichero = new File("MisAmigos.txt");
Scanner datosFichero = new Scanner(fichero);
while (datosFichero.hasNext())
System.out.println(datosFichero.nextLine());
datosFichero.close();
Gestión de ficheros de texto en Java
10
La clase File
¿Cómo saber si el fichero existe?
Cuando Java intenta abrir un fichero que no existe se
produce un error de ejecución (Java exception)
Para evitar que el programa se interrumpa de forma no
controlada al intentar abrir un fichero que no existe, es
necesario realizar una comprobación previa
El método exists() verifica si existe o no el fichero.
Devuelve false si el fichero no existe
Gestión de ficheros de texto en Java
11
La clase File
Lectura de un fichero de texto
File fichero = new File("MisAmigos.txt");
if (fichero.exists()) {
Scanner datosFichero = new Scanner(fichero);
while (datosFichero.hasNext())
System.out.println(datosFichero.nextLine());
datosFichero.close();
}
else
System.out.println("El fichero no existe !!!");
Gestión de ficheros de texto en Java
12