如果您想将字符串数组写入文件,您可以遍历数组并写入文件
例子
List<String[]>arrayList= new ArrayList<String[]>();
arrayList.add(new String[]{"hello", "goodbye"});
arrayList.add(new String[]{"yoyo", "fofo"});
arrayList.add(new String[]{"foo", "bar"});
BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
for(String[] data : arrayList) {
writer.write(String.join(",", data );
}
如果您正在寻找高级用法,这是使用CSV Java Utility 的一种可能性。使用它,您可以轻松读取和写入 CSV 数据。
这是一个例子
import java.io.BufferedOutputStream;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import com.Ostermiller.util.CSVPrinter;
public class CSVUtil{
public static CSVPrinter getCSVPrinter(File outputDir, String tabname,
boolean append) throws FileNotFoundException,
UnsupportedEncodingException {
// Output filename
File f = new File(outputDir, tabname + ".csv");
FileOutputStream fo = new FileOutputStream(f, append);
BufferedOutputStream out = new BufferedOutputStream(fo, 500000);
OutputStreamWriter streamWriter = new OutputStreamWriter(out, "UTF-8");
BufferedWriter bw = new BufferedWriter(streamWriter);
// Intialize the CSV Printer
CSVPrinter csvout = new CSVPrinter(bw);
csvout.changeDelimiter('\t');
// csvout.setAutoFlush(true);
csvout.setAlwaysQuote(true);
csvout.setLineEnding("\r\n");
return csvout;
}
}
用法:
CSVPrinter csvPrinter= CSVUtil.getCSVPrinter(outDir, "fileName",
true);
csvPrinter.writeln(new String[] {"Data1","Data2","Data3"});