SuperCSVでCSVファイルを書き込む方法を書きます。



CSVファイルの読み込みは


JavaでCSVを読む パートⅡ SuperCSV


http://ameblo.jp/smartjava/entry-10447653513.html



で書きました。ライブラリは


http://supercsv.sourceforge.net/



public static void main(String[] args) throws IOException{
  ICsvListWriter writer = new CsvListWriter(new FileWriter("sample3.csv"),

                              CsvPreference.EXCEL_PREFERENCE);

  String[] header = {"へっだ1","ヘッダ2","ヘッダ3"};

  writer.writeHeader(header);

  for(int i =0; i < 1000000; i++){
     List<String> row = new ArrayList<String>();
     row.add("データ" + i);
      row.add("でーた" + i);
     row.add("データ~" + i);
     writer.write(row);
     writer.getLineNumber();
}

writer.close();
}


---------------------------------------------------

出力結果


へっだ1,ヘッダ2,ヘッダ3
データ0,でーた0,データ~0
データ1,でーた1,データ~1
データ2,でーた2,データ~2
データ3,でーた3,データ~3
データ4,でーた4,データ~4
データ5,でーた5,データ~5
データ6,でーた6,データ~6

---------------------------------------------------


どうでしょうか、ホームディレクトリに sample3.csvが書き込まれたと思います。

書き込むオブジェクトをメモリ展開しなければ、書き出しもメモリ展開しません。


JUnitで確認してみてください。




現場で使えるソフトウェアテスト Java編/飯山 教史
¥2,940
Amazon.co.jp



Jakarta Commonsクックブック ―Javaプロジェクト必須のレシピ集/Timothy M. O’Brien

¥3,780
Amazon.co.jp