跳到正文
马克工具箱

JSON 转 CSV

把接口返回或数据库导出的 JSON 数组转换成 CSV 文件,用 Excel、WPS 或 Google 表格直接打开。嵌套字段会展开成 address.city 这样的列,所有行出现过的字段都会成为列,逗号、引号、换行都会正确转义。

在浏览器本地运行,输入的内容和文件都不会上传

JSON → CSV
输出 (CSV)

使用步骤

  1. 粘贴由对象组成的 JSON 数组(单个对象也可以)。
  2. 选择分隔符,一般用逗号。
  3. 如果要用 Excel 打开且包含中文,勾选「添加 BOM」。
  4. 复制 CSV,或下载为 .csv 文件。

参数说明

嵌套对象
展开为用点连接的列名:{"address":{"city":"北京"}} 会变成 address.city 列。
行内数组
以 JSON 文本形式写在一个单元格里,例如 [1,2,3],不会丢失数据。
字段缺失
列是所有行字段的并集,按首次出现的顺序排列;某行缺少的字段留空。
BOM
字节顺序标记,告诉 Excel 文件是 UTF-8 编码。不加的话,Windows 上的 Excel 打开会出现中文乱码。

示例

JSON:

[{"id":1,"name":"张三","address":{"city":"北京"}},{"id":2,"name":"李四, 经理","tags":["销售","华东"]}]

CSV:

id,name,address.city,tags
1,张三,北京,
2,"李四, 经理",,"[""销售"",""华东""]"

常见问题

用 Excel 打开中文乱码怎么办?

Excel 默认按本地旧编码(GBK)读取 CSV,除非文件以 UTF-8 BOM 开头。勾选「添加 BOM」后重新下载即可。WPS 通常能自动识别。

为什么所有内容都挤在一列里?

分隔符和 Excel 的区域设置不一致。可以换一个分隔符,或在 Excel 中通过「数据 → 从文本/CSV」导入并手动选择分隔符。

值里面有逗号或引号怎么办?

按照 RFC 4180 规范,包含逗号、引号或换行的值会用双引号包起来,内部的引号会写成两个。

有行数限制吗?

没有固定限制,几万行数据在浏览器里一两秒就能转换完。Excel 本身最多支持 1,048,576 行。

隐私说明

本工具完全在浏览器中运行,文件和文本都在你的设备上处理,不会上传到我们的服务器。

相关工具