我正在尝试为学校项目编写一个基本的“记事本”应用程序。
我创建了一个带有editText
的主类,我保存为String
textOutput。
我已使用以下内容将字符串保存到文件中:
FileOutputStream fos = openFileOutput(textOutput, Context.MODE_PRIVATE);
fos.write(textOutput.getBytes());
fos.close();
然而 Android开发者引用说为了阅读我应该使用以下步骤:
要从内部存储中读取文件:
- 调用
openFileInput()
并将其传递给要阅读的文件名。这将返回FileInputStream
。- 使用
read()
从文件中读取字节。- 然后使用
close()
关闭流。
这是什么意思,我该如何实现呢?
答案 0 :(得分:37)
如何使用 openFileInput :
的示例 FileInputStream in = openFileInput("filename.txt");
InputStreamReader inputStreamReader = new InputStreamReader(in);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
StringBuilder sb = new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null) {
sb.append(line);
}
答案 1 :(得分:3)
第一个参数是使用openFileOutput方法时要创建/更新的文件的名称。使用上面列出的相同参数,它可能如下所示:
FileInputStream fis = openFileInput(textOutput);
至于从FileInputStream中读取,这个文档在此处和Web上都有很好的记录。最好的方法还取决于您正在阅读的文件类型(例如XML)。所以我会留给你搜索。
修改:此处为documentation