JSON 转 CSV

把 JSON 对象数组转换为 CSV 表格。

name,age,city
张三,28,北京
李四,32,"上海, 徐汇"

什么是JSON 转 CSV?

JSON转CSV是一个把结构为“对象数组”的JSON数据转换成CSV(逗号分隔值)表格文本的在线工具。例如把 [{"name":"张三","age":28},{"name":"李四","age":31}] 转换为: name,age 张三,28 李四,31 该工具在浏览器本地完成转换,不会把数据上传到服务器,适合处理包含个人信息、业务数据等敏感JSON。它会自动从JSON数组的所有对象中收集出现过的字段名作为表头(header),字段值中若含逗号、双引号或换行会按CSV规范用双引号包裹并转义。

为什么使用JSON 转 CSV?

典型场景:把接口返回的JSON数据导入Excel/WPS或Google Sheets做数据分析;把日志系统、数据库导出的JSON数组转换成运营、财务能直接打开的表格;批量处理时避免手写脚本。相比命令行工具(如jq、csvkit)或写Python/Node脚本,浏览器工具无需安装环境,适合非技术人员和一次性任务;但字段结构复杂(多层嵌套)时,命令行工具的定制能力更强。

使用示例

简单对象数组

输入 [{"id":1,"city":"北京"},{"id":2,"city":"上海"}] → 输出两行CSV,表头为id,city,每行对应一个对象。

字段不一致(缺失字段)

输入 [{"a":1,"b":2},{"a":3}] → 第二行b列留空,表头仍为a,b(工具会合并出现过的所有字段名)。

嵌套对象

输入 [{"user":{"name":"王五"},"score":90}],嵌套的user对象通常会被序列化成JSON字符串放进单元格(如"{""name"":""王五""}"),而不是自动展开成多列,因为CSV是二维表格式,无法直接表达嵌套结构。

使用提示

转换前建议先用JSON校验工具确认JSON合法,并留意字段顺序问题:不同对象的字段顺序可能不一致,工具通常按第一次出现的顺序生成表头,如果顺序对你很重要,最好统一每个对象的字段顺序。

常见问题

表头是如何确定的?
表头取所有对象键的并集,按首次出现顺序排列;某一行缺少某个字段时,对应单元格留空。
值里包含逗号或引号怎么办?
会自动按 CSV 规范处理:包含逗号、双引号或换行的值会用双引号包裹,内部双引号转义为两个双引号。
数据会上传吗?
不会。JSON 解析与 CSV 生成全部在浏览器本地完成,下载的文件也直接由浏览器生成。
能处理中文吗?
可以,UTF-8编码原生支持中文;用Excel打开如果出现乱码,建议用“数据-从文本/CSV”导入并指定UTF-8编码,或让工具导出时带BOM头。
支持多大的JSON文件?
因为在浏览器内存中处理,通常几万行没问题,但几十MB以上的超大JSON可能导致页面卡顿,建议分批处理或改用脚本处理。
数据会上传到服务器吗?
不会,转换在浏览器本地JS中完成,不经过网络传输。
嵌套JSON如何处理?
嵌套对象/数组会被序列化为JSON字符串放进单元格,如需展平成多列(如user.name)需要额外的“扁平化”逻辑,多数这类工具不做自动展平。
输入必须是数组吗?
是的,工具期望顶层是对象数组;单个JSON对象或不规则结构无法直接转换,需要先调整成数组形式。

相关工具

← 返回工具箱· 数据均在浏览器本地处理,不上传服务器。