Ficheros (5/5). Flujos de bytes. Acceso aleatorio

ACCESO ALEATORIO

Clase RandomAccessFile

·         Representa un fichero de acceso aleatorio.

·         Esta clase no es parte de la jerarquía InputStream/OutputStream.

·         Maneja un puntero que indica la posición actual en el fichero. Cuando el fichero se crea el puntero se coloca en la posición 0.

·         Hay que tener en cuenta el tamaño del registro (debe ser fijo) y de sus campos. Java utiliza UNICODE, cada carácter ocupa 16 bits)

·         Métodos:

MÉTODO

DEVUELVEN OBJETOS DE TIPO

void RandomAccesFile(String nombrefichero, String acceso)

Constructor .

Puede lanzar la excepción FileNotFoundException

Valores para parámetro “acceso”:

r: modo lectura. EL fichero debe existir. Una operación de escritura genera una IOException.

rw: modo lectura y escritura. Si el fichero no existe, lo crea.

void RandomAccesFile(File objetoFile, String acceso)

Constructor .

Puede lanzar la excepción FileNotFoundException

long getFilePointer()

Devuelve la posición actual del puntero.

void seek(long posicion)

Coloca el puntero del fichero en una posición determinada desde el principio.

long length()

Devuelve el tamaño del fichero en bytes. La posición length() marca el final del fichero.

int skipBytes(int desplazamiento)

Desplaza el puntero desde la posición actual el número de bytes indicados en desplazamiento.

 

Ejercicio 11

Realizar un programa en Java que, a través de una clase llamada AccAleatorio  escriba números del 1 al 100 en un fichero de acceso aleatorio. Para ello deberás crear un método llamado escribir.  A continuación se debe leer el contenido del fichero de manera secuencial mostrando por pantalla su contenido. Crea para ello un método llamado Leer. Además se deben crear otros tres métodos que permitan realizar las siguientes operaciones:

·        Método consultar: mostrará el contenido de una posición determinada del fichero. Por ejemplo el quinto número. El valor de la posición se pasará como parámetro.

·        Método anadirFinal: añadirá números al final del fichero. El número a añadir se pasará como parámetro.

·        Método modificarValor: modificará el valor de una determinada posición. El nuevo valor y la posición se pasarán como parámetros.

 

Comentarios

Entradas populares de este blog

Ficheros (4/5). Flujos de bytes. Ejercicio 9

Ficheros (3/?). Flujos de caracteres. FileWriter, BufferedWrite, PrintWriter