【发布时间】:2010-05-12 11:12:46
【问题描述】:
我正在用 java 开发一个应用程序,它使用这个简单的方法定期将对象保存到硬盘上:
public void save(String filename)
{
try
{
FileOutputStream fos = new FileOutputStream(filename);
GZIPOutputStream gzos = new GZIPOutputStream(fos);
ObjectOutputStream out = new ObjectOutputStream(gzos);
out.writeObject(this);
out.flush();
out.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
该对象是 sebbot.learning.DirectPolicySearch 类的一个实例。
问题是,经过一些重构,学习包被重命名为“ballcapture”。现在,当我尝试加载保存的文件时,出现以下异常:
java.lang.ClassNotFoundException: sebbot.learning.DirectPolicySearch
我用来加载文件的方法是:
public static synchronized DirectPolicySearch load(String filename)
{
DirectPolicySearch dps = null;
try
{
FileInputStream fis = new FileInputStream(filename);
GZIPInputStream gzis = new GZIPInputStream(fis);
ObjectInputStream in = new ObjectInputStream(gzis);
dps = (DirectPolicySearch) in.readObject();
in.close();
}
catch (Exception e)
{
e.printStackTrace();
}
System.out.println(dps);
return dps;
}
谁能帮我解决这个问题? 非常感谢。
【问题讨论】:
标签: java exception object load save