Clases para gestión de flujos de datos desde-hacia ficheros

Tamaños de los tipos primitivos es Java

  • Ficheros de texto (ANSI, UNICODE, UTF8, UTF16, …)
    • FileReader
      • Excepciones: FileNotFoundException
      • int read(): lee un caracter y lo devuelve
      • int read(char[] buf): lee hasta buf.lenght de la matriz de caracteres.
      • int read(char[] buf, int desplazamiento, int n): lee n caracteres de la matriz buf comenzando por buf[desplazamiento] y devuelve el número leido de caracteres.
      • FileReader no permite leer líneas completas pero BufferedReader sí, ya que dispone del método readLine() además el read().
        • BufferedReader fichero = new BufferedReader (new FileReader(NombreFichero));
    • FileWriter
      • Excepciones. IOException (disco lleno, sin permisos de escritura, …)
      • write(int c): escribe un caracter
      • write(char[] buf): escribe un array
      • void write(String str): escribe una cadena de caracteres
      • append(char c): añade un caracter a un fichero
      • BufferedWriter para hacer escrituras eficientes
        • BufferedWriter fichero = new BufferedWriter (new FileWriter(NombreFichero));
    • PrintWriter
      • print(String)
      • println(String)
  • Ficheros Binarios
    • FileInputStream (similar a FileReader)
      • Excepciones: FileNotFoundException
      • int read(): lee un byte y lo devuelve
      • int read(byte[] buf): lee hasta buf.lenght de la matriz de bytes.
      • int read(byte[] buf, int desplazamiento, int n): lee n bytes de la matriz buf comenzando por buf[desplazamiento] y devuelve el número leido de bytes.
    • FileOutputStream (similar a FileWriter)
      • write(int c): escribe un byte
      • write(byte[] buf): escribe un array
      • Para leer y escribir datos primitivos (int, float, long, etc.):
        • DataInputStream
        • DataOutputStream
...
File fichero = new File("C:\\ADA\\FichData.dat");
FileInputStream filein = new FileInputStream(fichero);
DataInputStream dataIS = new DataInputStream(filein);
...

Hacer ejercicio en clase…