如何将 json 文件中的数据以二维表形式保存到 csv 文件

例题描述和简单分析

有 json 文件 json.json,数据如下所示:

需要把这个多层 json 二维化,存为 csv。identities 字段里还有俩字段,拆到上级同级,结果如下:

解法及简要说明

在集算器中编写脚本 p1.dfx,如下所示:


A

1

=file("json.json").read()

2

=json(A1).users.new(displayName,givenName,surname,extension_user_type,identities.signInType:issuerType,identities.issuerAssignedId,extension_timezone,extension_locale,extension_tenant)

3

=file("json.csv").export@tc(A2)

简要说明:

A1   把 json 文件中的数据读成串

A2  串按 json 格式解析成多层序表,用 new 函数将identities.signInType和 identities.issuerAssignedId 拆到上级

A3  结果导出到json.csv

JAVA 集成这段代码的方法可参考:《Java 如何调用 SPL 脚本》

问答搜集

https://stackoverflow.com/questions/63920843/multidimentional-json-to-csv-non-nested-csv-convertion-working-in-java