Sunteți pe pagina 1din 2

Archivos aleatorios en java - Presentation Transcript 1.

Archivos de Acceso Aleatorio o Los archivos de acceso secuencial son extremadamente tiles para la mayora de las aplicaciones, pero a veces son necesarios archivos de acceso aleatorio que permiten acceder a sus contenido en forma no secuencial, o aleatoria. o La clase RandomAccessFile del paquete java.io, implementa un archivo de acceso aleatorio. Puede ser usada tanto para lectura como para escritura de bytes. o Todo objeto, instancia de RandomAccessFile soporta el concepto de puntero que indica la posicin actual dentro del archivo. Es un entero que empieza en 0 y se mide en bytes. o RandomAccessFile provee comandos para operar sobre el puntero. 2. Archivos de Acceso Aleatorio o Constructores: o public RandomAccessFile ( String name, String mode) throws FileNotFoundException o public RandomAccessFile ( File file, String mode) throws FileNotFoundException Crea un archivo de acceso aleatorio. El modo puede ser: r : Se abre el archivo para solo lectura. rw : Abre el archivo para lectura y escritura. Si el archivo an no existe, lo crea. 3. Archivos de Acceso Aleatorio o La clase RandomAccessFile implementa las interfaces DataInput y DataOutput, por lo que tiene acceso a todas las operaciones read() y write() de las clases DataInputStream y DataOutputStream que tambin implementan las interfaces DataInput y DataOutput respectivamente. o Tambin se tienen mtodos para moverse dentro de un fichero: long getFilePointer(): Devuelve la posicin actual del puntero del fichero. void seek( long pos ): Coloca el puntero del fichero en una posicin determinada. La posicin se da como un desplazamiento en bytes desde el comienzo del fichero. La posicin 0 marca el comienzo de ese fichero.

long length(): Devuelve la longitud del fichero. La posicin length() marca el final de ese fichero. 4. Ejemplo o import java.io.*; o public class Log { o public static void main( String args[] ) throws IOException { o RandomAccessFile miRAFile; o String s = "Informacion a incorporar Tutorial de Java& quot;; o miRAFile = new RandomAccessFile( "java.txt","rw" ); o // Nos vamos al final del fichero o miRAFile.seek( miRAFile.length() ); o miRAFile.writeBytes( s ); o miRAFile.close(); o } o }