Java 使用ObjectOutputStream自动覆盖对象
当我保存第二个对象时,第一个对象从文件中删除,我如何解决这个问题Java 使用ObjectOutputStream自动覆盖对象,java,object,Java,Object,当我保存第二个对象时,第一个对象从文件中删除,我如何解决这个问题 public void guardar(){ try { ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("Datos.obj")); Object O[] = new Object[5]; O[0] = getRfc(); O[1] = getNom
public void guardar(){
try {
ObjectOutputStream oos = new ObjectOutputStream(new
FileOutputStream("Datos.obj"));
Object O[] = new Object[5];
O[0] = getRfc();
O[1] = getNombre();
O[2] = getEdad();
O[3] = getPuesto();
O[4] = getSalario();
oos.writeObject(O);
oos.flush();
oos.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(datos.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(datos.class.getName()).log(Level.SEVERE, null, ex);
}
}
如果有人能帮助我,请提前感谢。您需要使用第一个对象数组读取文件。然后创建对象数组的
java.util.ArrayList
,首先将第一个对象数组保存到其中,然后将第二个对象保存到其中,然后序列化包含这两个对象数组的列表
如果要序列化第三个对象,则必须再次从文件中读取java.util.ArrayList
,并将第三个对象附加到该文件中,依此类推
请注意:最好先将第一个对象数组保存到java.util.ArrayList
中,即使只有一个对象数组