我正在尝试读取包含多列的 csv 文件。第一行始终是 csv 文件的标题。我想将 csv 数据转换为 JSON。我可以将其读取为字符串并转换为 JSON,但我无法为其分配标头。
例如输入 csv 看起来像:
first_name,last_name
A,A1
B,B1
C,C1
Stream<String> stream = Files.lines(Paths.get("sample.csv"))
List<String[]> readall = stream.map(l -> l.split(",")).collect(Collectors.toList());
或者
List<String> test1 = readall.stream().skip(0).map(row -> row[1]).collect(Collectors.toList());
并且使用 com.fasterxml.jackson.databind.ObjectMapper 的 WriteValueAsString 只会创建没有标头的 JSON。
我希望输出格式为
{
[{"first_name":"A","last_name":"A1"},{"first_name":"B"....
如何在 Java 中使用流来准备这种 JSON 格式?
杨魅力
月关宝盒
当年话下
相关分类