将不规范的 csv 转换成规范的 json
csv 文件的第 3 列不规范,类似 json 串。
````
header1,header2,header3
value1,value2,{"name":"John","age":30,"car":null}
data1,data2,{"name":"Lily","age":28,"car":"Benz"}
````
请用 Java 将这个 csv 整理成规范的 json 串。
````
[{
"header1": "value1",
"header2": "value2",
"header3": "{\"name\":\"John\",\"age\":30,\"car\":null}"
}, {
"header1": "data1",
"header2": "data2",
"header3": "{\"name\":\"Lily\",\"age\":28,\"car\":\"Benz\"}"
}]
````
SPL代码:
=json(file($[data.csv]).import@tcpf())
函数json在Json串和二维表之间互转,import读取文件,@t表示首行是字段名,@c表示分隔符是逗号,@p表示不处理括号内的分隔符,@f表示字段按字符串处理,不做解析,否则header3会解析成二维表,这导致最终计算结果中没有"\"(输出为文件时,没有 \ 反而是对的)。
来源 https://stackoverflow.com/questions/75074834/convert-csv-with-nested-json-object-to-json
英文版