如何将 JSON 转换为 CSV(图文教程)
本文会带你一步步了解 如何将 JSON 转换为 CSV:包括使用在线 JSON 转 CSV 工具、Excel/Google 表格,以及简单的代码示例。还会介绍如何把 JSON 文件转成 CSV、处理 JSON Lines(NDJSON),以及应对嵌套 JSON 结构。
1. JSON 和 CSV 分别是什么?
在真正开始 把 JSON 转成 CSV 之前,先简单区分一下两者:
- JSON(JavaScript Object Notation) 是一种结构化数据的文本格式,常见于 API 返回结果、配置文件等。
- CSV(Comma-Separated Values) 是一种表格型文本格式,每行是一条记录,每列是一个字段。
当你 把 JSON 转为 CSV 时,本质上是在把“嵌套的对象结构”压平成“表格行+列”,方便在 Excel、Google 表格、数据库或 BI 工具中做分析。
2. 方法一:用在线工具把 JSON 转成 CSV
如果你想要的是最快捷的方式,推荐直接用在线 JSON 转 CSV 工具。
- 在浏览器中打开一个 JSON 转 CSV 工具页面。
- 粘贴你的 JSON 或 JSON Lines(NDJSON)到输入框。
- 点击按钮进行 JSON 转 CSV。
- 下载生成的 CSV 文件,在 Excel 或任意表格软件中打开。
大多数在线工具都支持:一键 将 JSON 转换为 CSV 表格,有的还能设置是否展开嵌套字段、选择分隔符、预览转换结果等。
如果你只想快速在线把 JSON 转成 CSV,可以使用这个免费的 JSON 转 CSV 工具。支持普通 JSON 和 JSON Lines,粘贴就能转换,并下载干净的 CSV 文件。
更推荐:使用专门的 JSON 转 CSV 工具页
一个专门的 JSON 转 CSV 在线工具页 通常会提供:
- 清晰的 JSON / JSON Lines 输入框。
- 在“标准 JSON”和“JSON Lines(NDJSON)”之间切换的选项。
- 转换后 CSV 的预览表格。
- 一键下载 CSV 的按钮。
当你 在线把 JSON 转 CSV 时,可以重点留意:
- 工具是否在浏览器本地运行(更安全)。
- 它如何处理
null值和缺失字段。 - 它如何展开嵌套对象和数组。
3. 方法二:用 Excel 或 Google 表格把 JSON 文件转为 CSV
如果你平时就习惯在表格软件里工作,也可以借助 Excel 或 Google 表格来 把 JSON 文件转换为 CSV。
3.1 快速路径:先用在线工具转 CSV,再交给 Excel/表格
- 先用在线 JSON 转 CSV 工具,把
.json文件上传后导出.csv。 - 在 Excel 或 Google 表格中打开生成的 CSV 文件。
- 按需要整理表头、数据类型和格式。
这几乎是不写代码快速把 .json 转成 .csv 的最简单做法。
3.2 在 Google 表格中导入 JSON 再导出 CSV
如果你经常从接口/链接中拉 JSON,可以在 Google 表格里做一点自动化:
- 新建一个 Google 表格。
- 通过 Apps Script 或插件,从 URL 获取 JSON,或在脚本中粘贴 JSON。
- 按 JSON 的字段写入表格的列和行。
- 通过 文件 → 下载 → 逗号分隔值 (.csv) 把当前工作表下载为 CSV。
4. 方法三:用代码把 JSON 转换为 CSV
当你需要批量处理、定时任务,或者对转换规则有很多特定需求时,写一点代码往往是 最灵活的 JSON 转 CSV 方案。
通用思路是:
- 读取 JSON(可以是对象、对象数组,或 JSON Lines)。
- 把每条记录“展开”为扁平结构。
- 把所有字段作为表头,把每条记录写成一行 CSV。
主流语言里都很容易做到:
- Python:用标准库
json+csv,或pandas等库。 - JavaScript/Node.js:
JSON.parse后自己拼接逗号分隔的行,或使用现成库。 - 命令行工具:如
jq等可以从 JSON 直接输出 CSV。
这类方式特别适合:
- 经常要 把 JSON 文件批量转 CSV;
- 需要对字段映射、过滤规则有完全控制权的场景。
5. 转换 JSON 为 CSV 时如何处理嵌套结构
在实际数据中,一个常见难点是:JSON 里有嵌套对象和数组。例如:
{
"user": { "id": 1, "name": "Alice" },
"items": [
{ "sku": "A1", "price": 10 },
{ "sku": "B2", "price": 20 }
]
}
要把这样的 JSON 转成 CSV,常见的几种做法是:
- 展开嵌套对象:把
user.id、user.name这种“点号路径”当作列名。 - 给数组下标:例如
items[0].sku、items[0].price。 - 把数组“炸开”为多行:如果你需要“一条数组元素 = 一行记录”,可以为同一个
user生成多行。
很多 JSON 转 CSV 工具会提供“flatten / 展平”选项,自动帮你 把嵌套 JSON 转成扁平 CSV。如果你用代码处理,可以写一个递归函数遍历 JSON 树,把最终扁平的 key/value 填入一行。
6. JSON Lines(NDJSON) 转 CSV
JSON Lines(也叫 NDJSON)是一种“一行一个 JSON 对象”的格式,例如:
{"id": 1, "name": "Alice"}
{"id": 2, "name": "Bob"}
要把这种 JSON Lines 转换为 CSV,可以:
- 按行拆分文本。
- 把每一行解析为 JSON 对象。
- 汇总所有 key 作为表头。
- 每个对象写成一行 CSV。
很多在线 JSON 转 CSV 工具明确支持 JSON Lines,可以明显简化日志、埋点数据这类场景下的 JSON 转 CSV 工作。
7. JSON 转 CSV 时常见的问题
在实际 把 JSON 转为 CSV 格式 时,常见坑包括:
- JSON 本身不合法(少逗号、少引号)。
- 结构不统一(有些记录是对象,有些是数组)。
- 各对象包含的字段不完全一致。
- 文件非常大,需要流式处理或分批转换。
如果遇到工具报错或转换结果怪怪的,可以尝试:
- 先用 JSON 格式化/校验工具检查原始 JSON 是否有效。
- 把数据拆成更小的文件分批转换。
- 写一小段脚本,按你自己的规则清洗/重组字段,再导出 CSV。
8. 小结
最后简单总结几种 将 JSON 转成 CSV 的方式:
- 使用 在线 JSON 转 CSV 工具,一键把 JSON 内容 转换为 CSV 表格,适合快速处理。
- 配合 Excel 或 Google 表格打开/编辑生成的 CSV 文件,做人工检查和修改。
- 在需要批量、自动化或高度定制时,写脚本 批量把 JSON 文件转换为 CSV。
选好最适合你场景的方式之后,就可以把 API 返回、日志、导出文件里的 JSON,稳定地变成结构清晰的 CSV,方便统计和分析。