我无法从文件中读取其他对象:java.io.streamcorrupted异常:无效类型代码:ac



我正在尝试从文件中读取所有保存的对象,但我只能读取第一个,然后出现异常(java.io.streamcorruptedexception: invalid type code: ac(

这是我的代码:

public void loadfile()
{
try{
FileInputStream file = new FileInputStream("accounts.dat");
ObjectInputStream inputfile = new ObjectInputStream(file);
boolean endoffile=false;
while(!endoffile){
try{

accounts2.add((Account) inputfile.readObject());
}catch(EOFException e){
endoffile=true;
}
catch(Exception f){
JOptionPane.showMessageDialog(null, f.getMessage());
}
}
inputfile.close();

}catch(IOException e){
JOptionPane.showMessageDialog(null, e.getMessage());
}
}
public void savefile(){
try{
FileOutputStream file = new FileOutputStream("accounts.dat",true);
ObjectOutputStream outputfile = new ObjectOutputStream(file);
for (int i =0 ; i < accounts.size();i++)
{

outputfile.writeObject(accounts.get(i));
}
outputfile.close();
JOptionPane.showMessageDialog(null, "Succesfully Registered");
this.dispose();



}catch(IOException e){
JOptionPane.showMessageDialog(null, e.getMessage());
}
}

如果您试图将inputfile.readObject((值放入变量中,那么在每次迭代中都会给它一个新值?

我认为这是因为有2个ObjectOutputStream,并且(我对此不确定(,有时第一个可能不是/坏关闭的。。。也许尝试使用相同的OOS?

相关内容

  • 没有找到相关文章

最新更新