【发布时间】:2016-06-22 06:25:09
【问题描述】:
我有一个简单的游戏应用程序,它有 3 个位置的记分牌,我需要保存数据。我不确定是否应该将其保存在外部或内部存储中。我已经设法在外部保存了一个 csv 文件,但是在测试时我发现它在所有设备上都不起作用。我现在正在考虑将数据保存在内部存储中,并查看以下标准文件保存代码。
String FILE_NAME = "file.txt";
try {
FileOutputStream fos = openFileOutput(FILE_NAME, Context.MODE_PRIVATE);
fos.write(someText.toString().getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
该类不提供任何 nextLine() 方法。
我的问题是我应该使用外部存储还是内部存储,如果我使用内部存储,我该如何分隔每一行?
【问题讨论】:
-
您在这里至少混淆了三件事。内部与外部存储对您写入数据的方式没有影响;
FileOutputStream用于写入数据,而不是读取,因此没有明智的方法可以提供nextLine()方法。 -
建议:使用
SharedProperties。 - 如果您不想这样做,请熟悉FileOutputStream、FileInputStream、Writer、Reader、BufferedWriter和BufferedReader,用于基于字符串(行)的文件 IO。 -
FileInputStream与您的问题完全无关。
标签: java android io fileoutputstream