Android:多次写入同一文件

时间:2012-06-27 04:51:55

标签: android sd-card filewriter bufferedwriter

Android新功能。抱歉!我正在尝试创建以下内容......

  1. 等待计时器完成。 (这里没有问题)。
  2. 将时间写入日志文件。
  3. 再次激活计时器。
  4. 回到第1步&重复。
  5. 写入文件的代码如下......

        File file = new File("/sdcard/log.txt");
        BufferedWriter writer = new BufferedWriter(new FileWriter(file));
        writer.write(str);
        writer.newLine();
        writer.flush();
        writer.close();
    

    代码只写文件中的最后一个.write!之前的WRITE已删除。我怀疑它每次创建一个新文件并编写最新行。我试过FOS和OSW,但结果相同!请帮助,我坚持这个将近48小时。

2 个答案:

答案 0 :(得分:3)

在追加模式中使用FileWriter

BufferedWriter writer = new BufferedWriter(new FileWriter(file, true));

答案 1 :(得分:2)

您可能希望将此构造函数用于FileWriter:

FileWriter (File file, boolean append)

  

通过将第二个参数用作true,然后将字节写入文件的末尾而不是开头。

在您的代码中使用:BufferedWriter writer = new BufferedWriter(new FileWriter(file,true));