java - 追加到文件 android

标签 java android

嘿,我需要附加到我的文件,但它不起作用,它一直覆盖文件,谁能告诉我哪里出了问题:

  public void generateNoteOnSD(String sBody){

        try
        {
            File root = new File(Environment.getExternalStorageDirectory(), "AdidasParticipants");

            if (!root.exists()) {
                root.mkdirs();

            }

            File gpxfile = new File(root, "participants.txt");

            BufferedWriter bW;

            bW = new BufferedWriter(new FileWriter(gpxfile));
            bW.write(sBody);
            bW.newLine();
            bW.flush();
            bW.close();
            //Toast.makeText(mContext, "Tus datos han sido guardados", Toast.LENGTH_SHORT).show();
        }
        catch(IOException e)
        {
             e.printStackTrace();
          //   importError = e.getMessage();
            // iError();
        }
       } 

提前致谢。

最佳答案

您可以通过更改分配 BufferedWriter 的行来修复它:

bW = new BufferedWriter(new FileWriter(gpxfile, true));

当您使用仅接受FileFileWriter 构造函数打开文件时,它将覆盖文件中先前的内容。将第二个参数作为 true 告诉 FileWriter 您想要附加到它的末尾。

关于java - 追加到文件 android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5987012/

相关文章:

java - 如何在Jpanel上绘画?

java - 使用 Cucumber 时 Spring Boot 在嵌入式 Cassandra 之前加载,如何解决此问题?

java - 在操作栏选项卡中添加徽章 View

java - 从java模块启动react-native Activity (android)

android - 谷歌播放界面

java - Android:初始化小部件时在等号后写(EditText)或(TextView)的目的是什么

java - 当 .jar 文件传输到另一台计算机时,文件编写器不工作

android - 如何使用 twitter4j 获取所有推特关注者的列表?

android - 在 parcelable 中解码困难

java - 如何使用数字获取货币对象