【发布时间】:2014-08-06 06:49:53
【问题描述】:
我正在使用 FileOutputStream 以附加模式连续将数据写入文件。一切正常,但我想在读取文件时将每个附加流与文件分开。
这是我在 Android 中创建文件并编写它的方式
FileOutputStream outputStream = service.openFileOutput("text.txt", Context.MODE_APPEND);
outputStream.write(measurement.toString().getBytes());
outputStream.close();
它正在成功附加数据,但是当我阅读它时,我不知道如何在附加的字符串之间找到端点。
这是我从文件中读取字符串的代码
StringBuilder total = new StringBuilder();
FileInputStream inputStream = service.openFileInput("text.txt");
BufferedReader r = new BufferedReader(new InputStreamReader(inputStream));
String line;
while ((line = r.readLine()) != null) {
total.append(line);
}
r.close();
inputStream.close();
Log.d(TAG, "File Size: "+total.length());
【问题讨论】:
-
你在读行但你没有写行。从写线开始。你可以用一个空行或任何你想要的东西来分隔你的追加。
-
我在这里写行 outputStream.write(measurement.toString().getBytes());
-
是的。我当然见过。但为什么会是一条线呢?
-
对不起,我不明白你的意思,我在测量变量中有内容并将其写入 text.txt
-
我看到了。但我看不到内容。我认为这不是一条线。你必须说明为什么要写一行。你可以举一个内容的例子,这样我们就可以看看它是否是一条线。
标签: android file file-io buffer fileoutputstream