.java.io.StreamCorruptedException: invalid type co

轉自:  http://www.cnblogs.com/elleniou/archive/2012/08/29/2662353.htmlhtml

.java.io.StreamCorruptedException: invalid type code: AC解決辦法java

問題描述:code

在向一個文件寫入可序列化對象時,每次只想向文件的末尾添加一個可序列化的對象,因而使用了FileOutputStream(文件名,true)間接的構建了ObjectOutputStream流對象,在向外讀數據的時候第一次運行的時候不會報錯,在第二次就會報java.io.StreamCorruptedException: invalid type code: AC錯誤。htm

緣由:對象

在一個文件都有一個文件的頭部和文件體。因爲對屢次使用FileOutputStream(文件名,true)構建的ObjectOutputStream對象向同一個文件寫數據,在每次些數據的時候他都會向這個文件末尾先寫入header在寫入你要寫的對象數據,在讀取的時候遇到這個在文件體中的header就會報錯。致使讀出時,出現streamcorrput異常。blog

解決辦法:因此這裏要判斷是否是第一次寫文件,如果則寫入頭部,不然不寫入。get

代碼示例:io

相關文章
相關標籤/搜索