難以附加到ObjectOutputStream
嗎?追加到ObjectOutputStream
我想附加到對象列表。以下代碼片段是一項任務完成後調用的函數。
FileOutputStream fos = new FileOutputStream
(preferences.getAppDataLocation() + "history" , true);
ObjectOutputStream out = new ObjectOutputStream(fos);
out.writeObject(new Stuff(stuff));
out.close();
但是,當我嘗試讀取它時,我只得到文件中的第一個。 然後我得到java.io.StreamCorruptedException
。
要讀我使用
FileInputStream fis = new FileInputStream
(preferences.getAppDataLocation() + "history");
ObjectInputStream in = new ObjectInputStream(fis);
try{
while(true)
history.add((Stuff) in.readObject());
}catch(Exception e) {
System.out.println(e.toString());
}
我不知道該怎麼雖然沒有例外許多對象將出席,所以我讀書。從谷歌說這是不可能的。我想知道如果有人知道一種方式?
你是否從流中獲得任何東西,還是第一次在循環中拋出異常? – skaffman 2009-07-28 14:53:58
它讀取我保存的第一個對象,然後我得到異常。 – 2009-07-28 15:02:07