Persistencia Manejo de Streams Un Stream representa un flujo de datos, o un canal de comunicación con un escritor o un lector lector..
Tipos:: Tipos InputStream/OutputStream: L/E de Bytes InputStream/OutputStream: Reader/Writer Reader/Writer:: L/E de Caracteres InputStreamReader/OutputStreamWriter InputStreamReader/OutputStreamWriter:: convierte bytes en caracteres y viceversa
1
Persistencia Tipos DataInputStream/DataOutputStream: L/E DataInputStream/DataOutputStream: de datos de tipo simple y Cadenas (Strings) ObjectInputStream/ObjectOutputStream ObjectInputStream/ObjectOutputStream:: para persistencia de objetos en Java BufferedInputStream/ BufferedOutputStream/ BufferedReader/ BufferedWriter:: Adiciona eficiencia BufferedWriter
Persistencia
write() OutputStream
read() InputStream
2
Persistencia Consejos para utilizar Streams InputStream y OutputStream son clases abstractas.. abstractas El número de bytes disponibles para leer en un InputStream se halla con el método available() close() close():: Para cerrar el Stream
Persistencia Ejemplo try{
InputStreamReader converter= InputStreamReader (System.in); BufferedReader in = new BufferedReader(converter); String text = in.readLine(); int i = NumberFormat.getInstance().parse(text).intValue(); } catch(IOException e){ } catch(ParseException pe){ }
3
Persistencia Si necesita leer o escribir cadenas de caracteres, use una variedad de Reader o Writer.. De lo contrario, use byte Streams Writer Se puede usar DataInputStream con alguna clase de input Stream, para leer desde un archivo, un socket o la entrada estándar, si se niecesita leer String o tipos de datos básicos. básicos.
Persistencia writeFloat() writeInt() writeLong()
write()
read() readFloat() readInt() readLong()
DataOutputStream OutputStream
DataInputStream InputStream
4
Persistencia Files La clase java. java.io io..File encapsula el acceso a la información de un archivo o un directorio en el sistema de archivos
Constructores File unarchivo = new File(“archivo.txt”) File unarchivo2 = new File(“directorio”,“archivo.txt”)
Sirve para Tamaño Archivos de un dir. Crea el directorio Crea todos los dir. Renombre el archivo
6
Persistencia File Streams File archivo = new File(“etc/password”); FileInputStream sarchivo = new FileInputStream(archivo); FileInputStream sarchivo = new FileInputStream (“etc/password”);
En caso de error pueden lanzarse dos excepciones FileNotFoundException o IOException IOException.. Si no hay error, sus métodos available() y length() tienen el mismo valor Usar close() al terminar de usarlo. usarlo.
Persistencia Ejemplo: El contenido de un archivo lo imprime por la salida estándar (std.out) import java.io.*; class ListIt{ public static void main (String args[]) throws Exception{ File file = new File (args[1]); if (!file.exists() || !file.canRead()){ System.out.println(“Imposible leer ” + file); return; }
7
Persistencia if (file.isDirectory()){ String [] files = file.list(); for (int i=0; i