2010-09-18 367 views

回答

24

看起来有FileWriter中的一个选项,而不是CSVWriter追加在文件的末尾。

该代码使得它的工作:

mFileWriter = new FileWriter(file_path, true); 
mCsvWriter = new CSVWriter(mFileWriter); 
0

在opencsv中追加一个文件似乎是不可能的(从最初的样子看,它看起来相当简单),但如果你不限于opencsv,你可以试试JExcel。要附加到JExcel中的文件,您基本上需要创建一个副本,然后处理该副本,并覆盖原始文件。这在OpenCSV中可能类似。

编辑:看来你唯一真正的选择是尝试JExcel或将整个文件读入列表中,追加到列表中,然后写出来。如果内存过大,请保持流打开,分块读取,写出块,然后写出附加块。

0

它应该是可能的:

FileWriter w = new FileWriter("yourfile.csv") 
CSVWriter writer = new CSVWriter(w, '\t'); 
... 
writer.flush(); 
CSVWriter writer2 = new CSVWriter(w, '\t'); 
... 
writer2.flush(); 
w.close(); 

CSV tool from the H2 database(声明:我写的)也支持这一点。