File Writer会覆盖以前的Java编写

时间:2014-02-03 20:26:31

标签: java text bufferedwriter

try {
                File file = new File(filePath+"usedcommands.txt");
                if (!file.exists()) {
                    file.createNewFile();
                }
                FileWriter fw = new FileWriter(file.getAbsoluteFile());
                BufferedWriter bw = new BufferedWriter(fw);
                bw.write(input+"\n");
                bw.close();
            } catch(Exception e) { System.out.println("can't write to usedcommands.txt..."); }

我正在写一个txt文件,但是每次我执行写入过程时它都会覆盖已经写入的内容。如何更改我的代码,以便程序的这一部分不会覆盖已存在的代码?

2 个答案:

答案 0 :(得分:3)

将true作为第二个参数传递给FileWriter以打开“追加”模式。

FileWriter fw = new FileWriter(file.getAbsoluteFile(), true);

答案 1 :(得分:1)

使用此功能

fw = new FileWriter("fileName",true);

有关FileWriter的更多详细信息,请参阅this