RandomAccessFile
Publicado por Clayder (25 intervenciones) el 04/07/2007 18:58:08
Hola:
Quisiera saber para que sirve la clase RandomAccessFile exactamente. Tengo dudas con respecto a su metodo seek() y su forma de utilizacion. Es decir, estaba probando su el funcionamiento de seek() y me di cuenta que solo puedo darle como argumentos, el inicio del archivo(0) o el final del archivo, ya que si le doy otro o no escribe o no lee, debido a una excepcion. Quisiera saber si estoy en lo correcto, o no.
Aqui les pongo un ejemplo. Mis preguntas las puse despues de cada seek() como comentario.
RandomAccessFile raf = new RandomAccessFile("prueba.dat","rw");
System.out.println("El puntero cola ======>"+raf.getFilePointer());
raf.writeUTF("Hola!!!!!");
long puntero= raf.getFilePointer();
System.out.println("el punto esta ahora en====>"+raf.getFilePointer());
raf.seek(puntero);/*¿Para volver a escribir en el archivo, tengo que mover el puntero hacia el fin del archivo necesariamente?*/
raf.writeUTF(" Como estas???");
raf.seek(0);/*¿¿¿Y para leerlo tengo que ubicar de nuevo el puntero al inicio???*/
System.out.println(raf.readUTF() + raf.readUTF());
raf.close();
Yo creia, que si ponia seek(1) comenzaba a leer despues del primer caracter, pero veo que no es asi, o al menos eso es lo que yo pienso. Les agradeceria me ayudaran a saber todas las utilidades de seek().
Gracias de antemano
Saludos.
Quisiera saber para que sirve la clase RandomAccessFile exactamente. Tengo dudas con respecto a su metodo seek() y su forma de utilizacion. Es decir, estaba probando su el funcionamiento de seek() y me di cuenta que solo puedo darle como argumentos, el inicio del archivo(0) o el final del archivo, ya que si le doy otro o no escribe o no lee, debido a una excepcion. Quisiera saber si estoy en lo correcto, o no.
Aqui les pongo un ejemplo. Mis preguntas las puse despues de cada seek() como comentario.
RandomAccessFile raf = new RandomAccessFile("prueba.dat","rw");
System.out.println("El puntero cola ======>"+raf.getFilePointer());
raf.writeUTF("Hola!!!!!");
long puntero= raf.getFilePointer();
System.out.println("el punto esta ahora en====>"+raf.getFilePointer());
raf.seek(puntero);/*¿Para volver a escribir en el archivo, tengo que mover el puntero hacia el fin del archivo necesariamente?*/
raf.writeUTF(" Como estas???");
raf.seek(0);/*¿¿¿Y para leerlo tengo que ubicar de nuevo el puntero al inicio???*/
System.out.println(raf.readUTF() + raf.readUTF());
raf.close();
Yo creia, que si ponia seek(1) comenzaba a leer despues del primer caracter, pero veo que no es asi, o al menos eso es lo que yo pienso. Les agradeceria me ayudaran a saber todas las utilidades de seek().
Gracias de antemano
Saludos.
Valora esta pregunta


0