这个问题已被多次询问,但我找不到解决问题的答案.
我正在尝试将嵌套的JSON格式转换为CSV格式,如下所示:
该JSON结构是任意的,并可以是任何东西,嵌套与否.
我不想知道它,这是一个数据库答案,我需要将这个JSON答案导出到CSV文件中.
这是一个例子
输入:
{ "_id": 1, "name": "Aurelia Menendez", "scores": [ { "type": "exam", "score": 60.06045071030959 }, { "type": "quiz", "score": 52.79790691903873 }, { "type": "homework", "score": 71.76133439165544 } ] }
我正在寻找的输出:
_id,name,scores.type,scores.score,scores.type,scores.score,scores.type,scores.score 1,Aurelia Menendez,exam,60.06...,quiz,52.79...,homework,71.76..
这是一个示例,它可以是任何其他JSON文档.
这里的想法是在CSV列名称中使用点表示法.
我已经使用过CDL,但输出不是我想要的:
_id scores name 1 "[{score:60.06045071030959,type:exam},{score:52.79790691903873,type:quiz},{score:71.76133439165544,type:homework}]" Aurelia Menendez
那么如何使用点表示法以通用方式将嵌套的JSON转换为CSV?
编辑
使用Jackson对JSON进行反序列化:
ObjectMapper mapper=new ObjectMapper(); JsonNode jsonNode=mapper.readValue(new File("C:\\...\\...\...\\test.json"), JsonNode.class);
伊斯梅尔