1 回答
TA贡献1995条经验 获得超2个赞
如果数据源是一个并且没有更改,您可以使用这个在线 CSV 到 JSON 转换器,它具有方便的“解析 JSON”功能,可以将cast
和crew
列中的 JSON 值转换为嵌套的 JSON 对象。
然后,您将使用JSON.simple、Gson或Jackson来解析纯 JSON 数据。
例如,
movie_id,title,cast,crew
19995,Avatar,"[{""cast_id"": 242, ""character"": ""Jake Sully"", ""credit_id"": ""5602a8a7c3a3685532001c9a"", ""gender"": 2, ""id"": 65731, ""name"": ""Sam Worthington"", ""order"": 0}]",null
变成:
[
{
"movie_id": 19995,
"title": "Avatar",
"cast": [
{
"cast_id": 242,
"character": "Jake Sully",
"credit_id": "5602a8a7c3a3685532001c9a",
"gender": 2,
"id": 65731,
"name": "Sam Worthington",
"order": 0
}
],
"crew": null
}
]
如果这不可行,那么您可能会告诉 CSV 解析库在例如在引号内找到分隔符时忽略它。
如果使用Opencsv,请查看CSVParserBuilder
课程。它有一种#withIgnoreQuotations(boolean)
方法可以完成这项工作。以下内容来自CSVReaderBuilder
类的描述。
CSVParser parser = new CSVParserBuilder() .withSeparator(',') .withQuoteChar('"') .withIgnoreQuotations(true) .build(); CSVReader reader = new CSVReaderBuilder(new FileReader("tmdb_5000_credits.csv")) .withSkipLines(1) .withCSVParser(parser) .build();
我个人喜欢杰克逊图书馆。它支持开箱即用的 JSON,并且可以扩展以支持许多其他格式,例如YAML和CSV。
添加回答
举报