我正在尝试将2个数据集合输出到Java中的.csv文件。
集合1 =客户名称集合2 =客户参考
我希望.csv呈现为:
Smith:839393,
Johnson:283940,
Collins:293845
我的代码:
private void writeDataToFile() throws IOException {
FileWriter writer = new FileWriter("src/test/resources/custData.csv");
List<String> customers = new ArrayList<>(customers);
List<String> references = new ArrayList<>(references);
String collect1 = customers.stream().collect(Collectors.joining(",\n" + ":"));
String collect2 = references.stream().collect(Collectors.joining(",\n" + ":"));
writer.write(collect1 + collect2);
writer.close();
}
我的输出:
Smith,
:Johnson,
:Collins839393,
:283940,
:293845
如何获得所需的输出?
如果两个列表的大小相同,则可以执行此操作。使用IntStream.range
迭代列表,然后将数据映射。然后收集加入,\n
String res = IntStream.range(0, customers.size())
.mapToObj(i -> customers.get(i) + ":" + references.get(i))
.collect(Collectors.joining(",\n"));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句