Manejo de Excepciones en JAVA
Existen varias clases que se pueden utilizar en JAVA para el manejo de entrada y salida. Qué clase se utiliza dependerá de lo que se quiera leer/escribir y de nuestra aplicación.
Clases para lectura
FileReader .- Clase específicamente diseñada para leer texto, basada en caracteres.
BufferedReader .- Provee funcionalidad de buffer a FileReader
InputStream – Lasclases que heredan de la clase InputStream manejan flujos de bytes por lo cual hay que utilizar bytes en lugar de caracteres.
FileInputStream .- Lectura de bytes de un archivo
DataInputStream .- Provee funcionalidad para leer tipos de datos primitivos a FileInputStream.
ObjectInputStream .- Provee funcionalidad para leer objetos a FileInputStream.
BufferedInputStream .– Provee funcionalidad debuffer a las clases InputStream
Para convertir bytes leídos a un String:
String nCad = new String(byte[], offset, lenght); //creating a String from bytes
Scanner - Clase especializada en lectura de archivos, flujos, cadenas, etc.
Clases para escritura
FileWriter .- Clase específicamente diseñada para escribir texto, basada en caracteres.
BufferedWriter .- Provee funcionalidadde buffer a FileWriter.
OutputStream – Las clases que heredan de la clase OutputStream manejan flujos de bytes por lo cual hay que utilizar bytes en lugar de caracteres.
OutputFileStream .- Escritura de bytes a un archivo.
DataOutputStream .- Provee funcionalidad para escribir tipos de datos primitivos a OutputFileStream.
ObjectOutputStream .- Provee funcionalidad para escribir objetos aOutputFileStream.
BufferedOutputStream .- Provee funcionalidad de buffer a las clases OutputStream
Para convertir obtener los bytes de una cadena:
byte[] bytes = cadena.getBytes();
Clases para convertir flujo de bytes a caracteres.
InputStreamReader .- Permite que una clase Reader utilize una clase Stream.
OutputStreamWriter .- Permite que una clase Writer utilize una clase Stream.Ejemplos:
Lectura de caracteres (texto).
BufferedReader lector = new BufferedReader(new FileReader(“archivo.txt”));
BufferedReader lector = new BufferedReader(new FileReader(new File(“archivo.txt”)));
Escritura de caracteres (texto).
BufferedWriter editor = new BufferedWriter(new FileWriter(“archivo.txt”));
BufferedWriter editor = new BufferedWriter(new FileWriter(newFile(“archivo.txt”)));
Lectura de bytes, primitivos y objetos.
BufferedInputStream lector = new BufferedInputStream(new FileInputStream(“archivo.txt”));
BufferedInputStream lector = new BufferedInputStream(new DataInputStream(new FileInputStream(“archivo.txt”)));
BufferedInputStream lector = new BufferedInputStream(new ObjectInputStream(new FileInputStream(“archivo.txt”)));
Lectura con ScannerScanner sc = new Scanner(new File(“archivo.txt”));
Scanner sc = new Scanner(new FileInputStream(“archivo.txt”));
Scanner sc = new Scanner(new BufferedInputStream(new FileInputStream(“archivo.txt”)));
Escritura de bytes, primitivos y objetos.
BufferedOutputStream editor = new BufferedOutputStream(new FileOutputStream(“archivo.txt”));
BufferedOutputStream editor = newBufferedOutputStream(new DataOutputStream(new FileOutputStream(“archivo.txt”)));
BufferedOutputStream editor = new BufferedOutputStream(new ObjectOutputStream(new FileOutputStream(“archivo.txt”)));
Lectura de caracteres con conversión de bytes.
BufferedReader lector = new BufferedReader(new InputStreamReader(new FileInputStream(“archivo.txt”)));
Escritura de caracteres con conversión de bytes.BufferedWriter editor = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(“archivo.txt”)));
Métodos comunes de la clase BufferedReader
int read() .- Lee únicamente un caracter.
String readLine() .- Lee una línea de texto.
long skip(long n) .- Se salta caracteres.
void close() .- Cierra el flujo y libera los recursos del sistema asociados con él.
Métodos comunes de la clase...
Regístrate para leer el documento completo.