Java 尝试附加到文件(我的代码似乎一直在创建新文件)

Java 尝试附加到文件(我的代码似乎一直在创建新文件),java,Java,我试图编写一个程序,将样本数据添加到一个文件中。对不对,代码似乎每次都创建一个新文件。该文件只包含我最后写入的数据,而不是之前的数据 代码: }通过在文件名后添加true将您的文件编写器设置为附加模式: FileWriter fileWritter = new FileWriter(file.getName(),true); . 您的注释//true=append file表明您以前有过(我想是这样)。1newfilewriter(file.getName()应该是newfilewriter(

我试图编写一个程序,将样本数据添加到一个文件中。对不对,代码似乎每次都创建一个新文件。该文件只包含我最后写入的数据,而不是之前的数据

代码:


}

通过在文件名后添加
true
将您的
文件编写器设置为附加模式:

FileWriter fileWritter = new FileWriter(file.getName(),true);
. 您的注释
//true=append file
表明您以前有过(我想是这样)。1
newfilewriter(file.getName()
应该是
newfilewriter(file)
,否则您将丢弃部分
路径。
2.不要测试
file.exists()
或调用
file.createNewFile()
新建FileWriter(…)
在操作系统中已经这样做了。您只是在复制工作,实际上导致文件被创建两次。
static void WriteFile( String path, String data) {

try {


    File file =new File(path);

    //if file doesnt exists, then create it
    if(!file.exists())
        file.createNewFile();


    //true = append file
    FileWriter fileWritter = new FileWriter(file.getName());
        BufferedWriter bufferWritter = new BufferedWriter(fileWritter);
        bufferWritter.write(data);
        bufferWritter.write("\r" );
        bufferWritter.write("\n" );


        bufferWritter.close();

}catch(IOException e){
    e.printStackTrace();
}
FileWriter fileWritter = new FileWriter(file.getName(),true);