2013-01-04 103 views
3

我使用Netbeans創建了Java程序,該程序從數據庫下載數據,然後使用OpenCSV將其保存到CSV文件中。但由於某些原因,第一行數據庫被跳過。OpenCSV不會將第一行數據庫寫入CSV文件

while (rs.next()){ 

CSVWriter writer = new CSVWriter(new FileWriter("C:\\test2.csv"), ',');   
writer.writeAll(rs,false); 
writer.flush(); 
writer.close(); 
} 

實際DB數據:

2 John Audi 
3 Nick Fiat 

回答

2

我想調用rs.next()是在結果集中推進一行,然後調用:

1 Mark BMW 
2 John Audi 
3 Nick Fiat 

寫入CSV文件數據寫完所有的東西都會寫出來。嘗試取出圍繞您的代碼的while(rs.next)循環塊,看看是否有效

+0

即確實起作用。謝謝。 – GuyWhoReadsStockoverflow

0

您應該再次檢查文檔。它清楚地表明你不需要while循環。您只需將結果集放在它上面並定義是否應該返回標題。

writer.writeAll(yourResultSet, true); 

在上述情況下,報頭將包含所生成的csv文件

+0

只要你還在繼續這個。然而,writer.writeAll(resultset,true)將適用於較大的結果集,它非常緩慢。 – algone