我想以高分的形式存储一些值。但由于我不会存储超过5个值,因此使用SQLite似乎不合适。我考虑的另一个选择是平面文件,但我不确定如何去做...
答案 0 :(得分:3)
有关您的数据存储选项,请参阅here。我想在你的情况下,最简单的方法是使用SharedPreferences。
您还可以使用内部存储将数据保存在应用程序专用的文件中。我不建议使用外部存储来存储高分。
答案 1 :(得分:2)
如果它是一个数组,你可以使用它:
public void saveArray(String filename, String[] output_field) {
try {
FileOutputStream fos = new FileOutputStream(filename);
GZIPOutputStream gzos = new GZIPOutputStream(fos);
ObjectOutputStream out = new ObjectOutputStream(gzos);
out.writeObject(output_field);
out.flush();
out.close();
}
catch (IOException e) {
e.getStackTrace();
}
}
@SuppressWarnings("unchecked")
public String[] loadArray(String filename) {
try {
FileInputStream fis = new FileInputStream(filename);
GZIPInputStream gzis = new GZIPInputStream(fis);
ObjectInputStream in = new ObjectInputStream(gzis);
String[] read_field = (String[])in.readObject();
in.close();
return read_field;
}
catch (Exception e) {
e.getStackTrace();
}
return null;
}
你只需这样称呼:
Save Array: saveArray("/sdcard/.mydata/data.dat", MyArray);
Load Array: String[] MyArray = loadArray("/sdcard/.mydata/data.dat");
您可以在http://androidworkz.com/2010/07/06/source-code-imageview-flipper-sd-card-scanner/
查看示例