【发布时间】:2014-11-18 19:40:42
【问题描述】:
我目前正在用 JAVA 进行序列化,到目前为止,我已经使序列化和反序列化工作正常。例如,如果我在程序中制作电影,关闭程序然后重新打开程序,电影仍然存在。我的问题是,即使当我运行程序时所有代码都可以正常工作并且序列化工作正常,我也会收到如下所示的错误。
在这里你可以看到我的程序正在运行并显示异常
这是异常指向的代码
public void readRecordsFromFile()
{
Video v = null;
try
{
FileInputStream fileIn = new FileInputStream("PrintOut.dat");
ObjectInputStream in = new ObjectInputStream(fileIn);
while((v = (Video)in.readObject()) != null)
{
videos.add(v);
}
//videos=(ArrayList<Video>)in.readObject();
fileIn.close();
in.close();
}
catch(IOException i)
{
System.out.println("IO Exception");
i.printStackTrace();
return;
}
catch(ClassNotFoundException m)
{
System.out.println("Class Not Found Exception");
m.printStackTrace();
return;
}
}
尤其是它指向的那条线
while((v = (Video)in.readObject()) !=null)
有没有办法消除异常?即使出现异常,我的程序也能正常运行这一事实让我相信它可能并不那么重要,但我认为删除异常是一种好习惯。
任何帮助将不胜感激,如果需要任何其他代码,请告诉我, 提前致谢, 杰森
【问题讨论】: