Java - Leer/escribir archivos

 
Vista:

Leer/escribir archivos

Publicado por Pacifico (5 intervenciones) el 05/09/2006 18:03:19
Buenas tardes, se me ha planteado otra duda:

Quiero abrir un fichero, buscar una linea en el y sustituirla por otra linea que tengo almacenada en un String ¿Existe alguna forma de hacer esto? Pues yo he conseguido lo de encontrar la linea y demas, pero si luego escribo en el fichero me elimina todo lo que habia para dejar unicamente la linea que introduzco.
Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

RE:Leer/escribir archivos

Publicado por Yamil Bracho (2315 intervenciones) el 05/09/2006 21:45:22
En java tienes dos tipos de stream (input y output) asi que para hacer lo que quieres hacer debes hacerlo con dos archivos, uno de entrada y el otro de salida. Al terminar el procesos eliminas el de entrada y renombras el de salida
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Leer/escribir archivos

Publicado por chuidiang (950 intervenciones) el 06/09/2006 08:50:37
Hola:

Una opción es la que te comenta Yamil. Debes escribir aparte el fichero completo hasta llegar a la linea que quieres reeemplazar, escribir la nueva linea y luego el resto. Finalmente puedes borrar el original y cambiar de nombre al fichero nuevo.

Otra opción, que solo te funcionará correctamente si la linea nueva tiene LA MISMA longitud que la antigua, es abrir el fichero con la clase RandomAccessFile. Esta clase tiene métodos seek() que te permiten situarte en cualquier posición del fichero para leer o escribir. Eso si, lo que escribes "machaca" lo que había en esa posición, por ello es importante que ambas líneas sean de la misma longitud.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer/escribir archivos

Publicado por adrian (1 intervención) el 08/09/2006 03:55:43
Mira tal vez estoy lejos de lo que quieres pero es una solucion: Puedes leer el fichero hasta la linea que quieres eliminar e ir guardadon todo luego donde vas guardando cuando te toqua leer la linea que quieres eliminar solo guarda en su lugar la linea que realmente quieres sustituir y sigues leyendo el resto del fichero por ultimo escribes en el mismo fichero lo que tienes guardado.
espero entiandas y que resuelvas.
atentamente un amigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar