[英]Convert List<List<String>> to csv
List<String> a=new ArrayList<>();
a.add("Ross");
a.add("Rachel")'
List<String> b=new ArrayList<>();
b.add("Chandler");
b.add("Monica")'
List<String> c=new ArrayList<>();
c.add("Joey");
c.add("Phoebe");
List<List<String>> x=new ArrayList<>();
x.add(a);
x.add(b);
x.add(c);
我想將字符串列表列表 x 轉換為 csv? 如何做到這一點?
csv 應該看起來像 -
羅斯·雷切爾
錢德勒莫妮卡
喬伊菲比
一個簡單的 csv 編寫器可能如下所示:
Writer out = System.out; // this could be a FileWriter, StringWriter, etc.
for (List<String> line : x) {
int n = 0;
for (String field : line) {
if (n++ > 0) {
out.write(","); // field separator
}
out.write(field);
}
out.write("\n"); // record separator
}
並不是說如果您的任何字符串包含逗號,則該字段應該用雙引號括起來,例如"A,C"
。 上面的代碼沒有這樣做。 包含換行符或雙引號的字段也應該轉義。 沒有單一的規范來定義這些轉義在所有情況下如何工作,因此有時會變成反復試驗,以查看您的文件將導入到的應用程序中的工作原理。
有時 csv 文件在第一行有逗號分隔的字段名稱,有時沒有。
csv 的變體使用不同的字符作為字段分隔符,例如“\t”或“|”
有諸如 opencsv 之類的庫可以處理這些復雜性,因此對於非平凡的情況,使用這些庫而不是像這樣重新發明基本功能會很有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.