【发布时间】:2011-12-04 23:07:59
【问题描述】:
我有许多对象(同一类)序列化到一个文件中。 但是在反序列化的时候,只有第一个序列化的对象会被反序列化。
序列化代码:
public void save() {
File f = new File("vehicule.txt");
try {
if(!f.exists()) f.createNewFile();
} catch(IOException e) {
}
try {
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(f,true));
oos.writeObject(this);
} catch(IOException e) {
}
}
我认为问题出在:
Vehicule v;
while( (v = (Vehicule)ois.readObject()) != null )
有没有更好的方法来检查文件的结尾?
【问题讨论】:
-
您能说明如何将对象序列化到文件中吗?看起来您正在执行自定义序列化过程。
-
你不说你的问题到底是什么,看看你是如何捕获然后丢弃异常的,你不太可能说它是什么。
-
ObjectOutputStream 不生成文本文件。它是二进制的。
标签: java deserialization