当序列化对象时,我进行设置,
FileOutputStream fileOutputStream = new FileOutputStream(path +"\\"+filename,true);
将对象追加到序列化文件中。例如,我将Email对象序列化到同一个文件中。
当反序列化这些保存的对象时,我希望获得所有对象,但它只给出了第一个对象。
ObjectInputStream objectInputStream = new ObjectInputStream(fileInputStream);
Email sentEmail = (Email) objectInputStream.readObject();
我在这里找到了一个类似的问题,
如何在Java中反序列化多个对象?但是没有objectInputStream.hasNext()
方法。那么,在反序列化时如何获取所有对象呢?
EOFException
异常,然后停止。 - user207421ObjectOutputStream
向文件追加内容而不采取特殊措施。有关详细信息,请参见此处。 - user207421