我已经创建了一个ListView,它可以动态添加数据,但是每当我重新启动该应用程序时,先前存储的列表都会丢失。
如何保存该列表?
您可以使用android SharedPreferences将它们保存到本地客户端
或者,您可以编写自己的模型。您应该在这里传递您的对象;
public boolean writeYourObjectOnLocal(File dir, YourObject yourObject) {
ObjectOutput output = null;
OutputStream buffer = null;
FileOutputStream fileOutputStream = null;
try {
fileOutputStream = new FileOutputStream(dir.toString() + File.separator + "myFile.dat");
buffer = new BufferedOutputStream(fileOutputStream);
output = new ObjectOutputStream(buffer);
output.writeObject(yourObject);
return true;
} catch (Throwable e) {
return false;
} finally {
try {
output.close();
} catch (Throwable e) {}
try {
buffer.close();
} catch (Throwable e) {}
try {
fileOutputStream.close();
} catch (Throwable e) {}
}
}
您可以阅读您的对象;
public YourObject readYourObjectFromLocal(File dir) {
ObjectInput input = null;
BufferedInputStream buffer = null;
FileInputStream fileInputStream = null;
try {
String fileName = dir.toString() + File.separator + "myFile.dat";
fileInputStream = new FileInputStream(fileName);
buffer = new BufferedInputStream(fileInputStream);
input = new ObjectInputStream(buffer);
return (YourObject)input;
} catch (Throwable e) {
return null;
} finally {
try {
input.close();
} catch (Throwable e) {
}
try {
fileInputStream.close();
} catch (Throwable e) {
}
try {
buffer.close();
} catch (Throwable e) {
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句