2014-01-15 10 views
6

私はopencsvライブラリを使用してcsvファイルを書き込もうとしています。制限は、ディスクや一時ファイルにファイルを作成したくないということです。私はそれを達成する方法はありますか?実際のファイルや一時ファイルを作成せずにopencsvを使用してCSVを文字列に書き込む

私が見たところから、CSVWriterのコンストラクタにはFileWriterオブジェクトが必要です。

ありがとうございます!

答えて

2

実際には、CSVWriterWriterのインスタンスを取ります。StringWriterを渡すだけです。書き込み操作後、toString()を使用してコンテンツの内容をStringWriterに問い合わせることができます。

6

だけではなく、してFileWriterのStringWriterを使用し、here与えられた例を変更するには:

public static void main(String[] args) throws IOException { 
    StringWriter s = new StringWriter(); 
    CSVWriter writer = new CSVWriter(s, '\t'); 
    // feed in your array (or convert your data to an array) 
    String[] entries = "first#second#third".split("#"); 
    writer.writeNext(entries); 
    writer.close(); 
    String finalString = s.toString(); 
    System.out.println(finalString); 

} 
関連する問題