你好我有一个非常奇怪的问题...... 我使用接口“Serializable”将我的类的根对象保存到文件。 此外,我正在存储其他类的实例,如“Hero”等。 保存和加载似乎没有问题....直到我使用任务管理器或Ram Booster清除RAM并尝试加载我的数据....初始的Root对象被加载,但是每个没有直接初始化的对象在我的根类(例如“Hero myHero;”)再次为null ...所以我收到一个空指针异常... 我将我的根对象保存在onPause()和onStop()中 并且代表我的保存和加载类
public static void saveToStorage(Context context, Root root)
{
try
{
ObjectOutputStream oos = new ObjectOutputStream( new FileOutputStream(new File(context.getFilesDir().getAbsoluteFile(), "save.bin")));
oos.writeObject(root);
oos.flush();
oos.close();
}
catch (Exception e)
{
e.printStackTrace();
Log.e("Error", e.getMessage());
}
}
public static Object loadClassFile(File f)
{
try
{
ObjectInputStream ois = new ObjectInputStream(new FileInputStream(f));
Object o = ois.readObject();
return o;
}
catch(Exception e)
{
e.printStackTrace();
}
return null;
}