我有List<String>
,我正在写入 csv 文件,但每一行都写在一个单元格上。我如何通过“”拆分它们?我试图设置分隔符,但它仍然不起作用。
代码
Writer writer = new FileWriter("D://new.csv", true);
CSVPrinter csvPrinter = new CSVPrinter(writer, CSVFormat.DEFAULT);
csvPrinter.printRecords(myList);
正如documentation
所说,当你给一个List<String>
时,它会使用它一个记录,即一行,即每个String
在一个单元格中。
如果给定的集合仅包含简单对象,则此方法将打印单个记录,如 printRecord (Iterable)
您需要一个使用每个String
实际上是一行的代码,如
传递每个String
拆分一个单独的记录
List<String> myList = new ArrayList<>();
for (String row : myList)
csvPrinter.printRecord(row.split(","));
拆分所有String
,然后将整个列表作为记录列表传递
List<String> myList = new ArrayList<>();
List<String[]> myListSplitted = myList.stream().map(row -> row.split(",")).collect(Collectors.toList());
csvPrinter.printRecords(myListSplitted);
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(1条)