我正在尝试使用lwuit.io.Storage,它在应用程序运行时工作正常(我可以做crud)但是在关闭应用程序后它的数据会清除。 我考虑过了:
我正在使用Vector存储我的“car”对象:
Car c = new Car("ford", 1918);
Vector v = (Vector) Storage.getInstance().readObject("cars");
if (v == null) {
v = new Vector();
}
v.addElement(c);
Storage.getInstance().writeObject("cars", v);
Vector test = (Vector) Storage.getInstance().readObject("cars");
if (test.lastElement() instanceof Car){
Car c1 = (Car) test.lastElement();
System.err.println(c1);
}
避免调用“Storage.getInstance()。clearStorage();”代码中的任何地方!
“Storage.getInstance()listEntries();”返回一个包含“cars”字符串的元素数组(即使重新启动应用程序后)。
this是我简单的“汽车”课程。
知道我错过了什么/做错了吗?
提前致谢
答案 0 :(得分:2)
我明白了,这是一个愚蠢的错误,
问题在于实现Externalizable接口, 我叫“ Util .writeUTF(name);”在externalize()方法中,并尝试在internalize方法中使用“ stream .readUTF()”读取它。
只需将“ Util .writeUTF(name)”替换为“ stream .writeUTF(name)”。
它已经成功了。