0

我正在尝试将一些数据写入文件。但是,每次我重新启动我的程序时,我认为它正在覆盖原始文件(制作一个新文件?)这是我实例化事物的一段代码。有什么我可以改变的,这样文件就不会每次都被覆盖?类似 if file.doesExist??

try {
        File root = Environment.getExternalStorageDirectory();
        if(root.canWrite()){
        File highscoresFile = new File(root, "names.txt");
        FileWriter writer = new FileWriter(highscoresFile);
        BufferedWriter out = new BufferedWriter(writer);
        //out.newLine();
        out.append(name);
        out.close();
        }
    } catch (FileNotFoundException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
4

1 回答 1

1

您可能会覆盖该文件。您可以使用不同的构造函数将 FileWriter 附加到文件的末尾。

而是使用

FileWriter writer = new FileWriter(highscoresFile, true);

最后的布尔值告诉你是否追加到文件的末尾。

于 2011-05-11T22:57:29.443 回答