Foros del Web » Programación para mayores de 30 ;) » Java »

Escribir en Posicion de un Archivo sin sobreescribir

Estas en el tema de Escribir en Posicion de un Archivo sin sobreescribir en el foro de Java en Foros del Web. Buenas Tardes Amigos, Tengo un pequeño problema con un procedimiento que debo de hacer con un archivo resulta que de un Archivo existente debo "agregar" ...
  #1 (permalink)  
Antiguo 01/12/2011, 13:06
Avatar de gasoft  
Fecha de Ingreso: abril-2009
Mensajes: 68
Antigüedad: 15 años, 7 meses
Puntos: 3
Pregunta Escribir en Posicion de un Archivo sin sobreescribir

Buenas Tardes Amigos,


Tengo un pequeño problema con un procedimiento que debo de hacer con un archivo resulta que de un Archivo existente debo "agregar" texto en un posición determinada. Estuve mirando con RandomAccessFile y funciona bien , el problema es que me sobre-escribe el contenido del archivo en la posicion que le paso. Quisiera saber si conocen un metodo para lograr mi cometido sin necesidad de sobre-escribir.

gracias por su ayuda y adjunto el codigo utilizado =)

Código JAVA:
Ver original
  1. RandomAccessFile fichero = new RandomAccessFile("ruta_archivo", "rw");
  2.  
  3.      String linea = "";
  4.          while ((linea = fichero.readLine()) != null) {
  5.               if(linea.equals("//Pegar Codigo Aqui")){
  6.                   fichero.seek(fichero.getFilePointer());
  7.                   fichero.writeBytes("Hola\n");
  8.                 }
  9.                
  10.              }
  #2 (permalink)  
Antiguo 01/12/2011, 13:08
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 2 meses
Puntos: 454
Respuesta: Escribir en Posicion de un Archivo sin sobreescribir

No puedes hacerlo. Un archivo son una ristra de bytes escritos en el disco duro y no se puede "insertar" bytes entre medias. La única opción es reescribir el archivo completo o, al menos, desde el sitio en el que quieres insertar algo.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 01/12/2011, 13:13
Avatar de gasoft  
Fecha de Ingreso: abril-2009
Mensajes: 68
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Escribir en Posicion de un Archivo sin sobreescribir

Muchas Gracias chuidiang. Tu como siempre tan sabio =). Entonces la sugerencia es reescribir el archivo o parte de el.
  #4 (permalink)  
Antiguo 02/12/2011, 10:45
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 10 meses
Puntos: 78
Respuesta: Escribir en Posicion de un Archivo sin sobreescribir

Exacto.

Lees el archivo, reescribes la linea que te interesa, acabas de leer el archivo, y guardas todo en otro nuevo. (O eliminas ese y lo guardas todo en el mismo).

Un saludo!

Etiquetas: posicion, sobreescribir, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:12.