在Java中附加到CSV文件的最后一行

时间:2011-11-24 11:37:02

标签: java csv

下面的代码是我目前的代码,但它会覆盖当时csv文件中的所有数据,而不是将其附加到最后。是否有捷径可寻?

public void printCustomerList() throws IOException{
        FileWriter pw = new FileWriter("F:\\data.csv");
        Iterator s = customerIterator();
        if (s.hasNext()==false){
            System.out.println("Empty");
        }
        while(s.hasNext()){
            Customer current  = (Customer) s.next();
            System.out.println(current.toString()+"\n");
            pw.append(current.getName());
            pw.append(",");
            pw.append(current.getAddress());
            pw.append("\n");
        }
            pw.flush();
            pw.close();
    }

3 个答案:

答案 0 :(得分:31)

尝试打开这样的文件

FileWriter pw = new FileWriter("F:\\data.csv",true); 

传递true参数以便追加。

答案 1 :(得分:4)

使用FileWriter pw = new FileWriter("F:\\data.csv", true);

参考:FileWriter

答案 2 :(得分:4)

您需要为FileWriter使用不同的构造函数:

FileWriter pw = new FileWriter("F:\\data.csv", true);

有关详细信息,请参阅JDK API for this constructor