如何将 JSON 转换为 CSV(图文教程)

2025-01-01

本文会带你一步步了解 如何将 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 工具。

  1. 在浏览器中打开一个 JSON 转 CSV 工具页面。
  2. 粘贴你的 JSON 或 JSON Lines(NDJSON)到输入框。
  3. 点击按钮进行 JSON 转 CSV
  4. 下载生成的 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/表格

  1. 先用在线 JSON 转 CSV 工具,把 .json 文件上传后导出 .csv
  2. 在 Excel 或 Google 表格中打开生成的 CSV 文件。
  3. 按需要整理表头、数据类型和格式。

这几乎是不写代码快速把 .json 转成 .csv 的最简单做法。

3.2 在 Google 表格中导入 JSON 再导出 CSV

如果你经常从接口/链接中拉 JSON,可以在 Google 表格里做一点自动化:

  1. 新建一个 Google 表格。
  2. 通过 Apps Script 或插件,从 URL 获取 JSON,或在脚本中粘贴 JSON。
  3. 按 JSON 的字段写入表格的列和行。
  4. 通过 文件 → 下载 → 逗号分隔值 (.csv) 把当前工作表下载为 CSV。

4. 方法三:用代码把 JSON 转换为 CSV

当你需要批量处理、定时任务,或者对转换规则有很多特定需求时,写一点代码往往是 最灵活的 JSON 转 CSV 方案

通用思路是:

  1. 读取 JSON(可以是对象、对象数组,或 JSON Lines)。
  2. 把每条记录“展开”为扁平结构。
  3. 把所有字段作为表头,把每条记录写成一行 CSV。

主流语言里都很容易做到:

  • Python:用标准库 json + csv,或 pandas 等库。
  • JavaScript/Node.jsJSON.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.iduser.name 这种“点号路径”当作列名。
  • 给数组下标:例如 items[0].skuitems[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,可以:

  1. 按行拆分文本。
  2. 把每一行解析为 JSON 对象。
  3. 汇总所有 key 作为表头。
  4. 每个对象写成一行 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,方便统计和分析。