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

sigue el problema con archivos

Estas en el tema de sigue el problema con archivos en el foro de Java en Foros del Web. Continuo con los problemas para escribir y leer en el archivo.Segun he mirado,ahora escribo asi en el archivo //asi declaro el objeto MiObjectOutputStream out= new ...
  #1 (permalink)  
Antiguo 17/05/2007, 06:00
 
Fecha de Ingreso: febrero-2007
Mensajes: 172
Antigüedad: 17 años, 2 meses
Puntos: 0
sigue el problema con archivos

Continuo con los problemas para escribir y leer en el archivo.Segun he mirado,ahora escribo asi en el archivo
//asi declaro el objeto
MiObjectOutputStream out= new MiObjectOutputStream(new FileOutputStream("tasques.obj",true));
//esta es la funcion para escribir
out.writeUnshared(ntp);
//y he sobrecargado el operador para que no incluya la cabecera al escribir
public class MiObjectOutputStream extends ObjectOutputStream
{
public MiObjectOutputStream(OutputStream out) throws IOException
{
super(out);
}
protected MiObjectOutputStream() throws IOException, SecurityException
{
super();
}
protected void writeStreamHeader() throws IOException
{
}
}

Pero aun asi me sigue saliendo el java.io.StreamCorruptedException al leer del archivo
  #2 (permalink)  
Antiguo 17/05/2007, 06:36
 
Fecha de Ingreso: mayo-2007
Mensajes: 11
Antigüedad: 17 años
Puntos: 0
Re: sigue el problema con archivos

pues tiene toda la pinta del mundo de que estas escribiendo con dos procesos simultaneamente en el mismo archivo o que estas leyendo y escribiendo simultaneamente... bienvenido al apasionante mundo del multithreading y el synchronize.
  #3 (permalink)  
Antiguo 17/05/2007, 08:54
 
Fecha de Ingreso: febrero-2007
Mensajes: 172
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: sigue el problema con archivos

A ver,porque igual es que yo tengo mal el concepto desde el principio y lo estoy haciendo mal desde el comienzo.Yo que lo que hago es que cada vez que se crea un objeto que tengo que guardar llamo al out.writeunshared(objeto)
y los objetos no los creo necesariamente todos seguidos,si no que puedo crear uno,hacer otra cosa y al rato crear otro y asi.Y si durante la ejecucion del programa creo 10 objetos pos 10 veces que llamo al out para escribir 10 veces en el fichero
Seguiria saliendo ese error o seria mejor si en lugar de llamar al objeto out cada vez,lo voy guardando en un arraylist o list y al final solo serializo ese arraylist o list?
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 12:34.