0

我正在尝试使用以下方法在java(android)中保存文件(然后稍后读取)

FileInputStream fis = openFileInput(filename);

然后也许使用 BufferedReader/writer。无论如何,我正在尝试保存字符串和数字,我想知道在这种情况下从 I/O 写入和读取的最佳方法是什么?我打算做以下阅读

FileInputStream fis = openFileInput(filename);
InputStreamReader inputStreamReader = new InputStreamReader(fis);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

和写作

FileOutputStream fos = openFileOutput(filename, 20);
OutputStreamWriter outStreamReader = new OutputStreamWriter(fos);
BufferedWriter bufferedWriter = new BufferedWriter(outStreamReader);

但我注意到 readLine 将始终返回该行的字符串。所以我必须经历一些行的字符串到整数的转换。这是一种有效的方法(或正确的方法)吗?我觉得我错过了什么谢谢

4

1 回答 1

4

除非您有多行字符串或可能被误认为整数的字符串或具有非常复杂结构的文件,否则只需按照上面的建议编写文本文件即可。效率低下不值得失去可移植性和可读性的好处。

对于更复杂的文件,其他不错的选择是 JSON 或 XML 或 Java 属性文件(您可以使用这些好的库)。

如果您有一个非常好的理由(并且必须调用 Integer.parseInt 并保存 3 个字节不是一个好的理由),请仅使用二进制格式。

于 2012-06-27T06:06:53.870 回答