JSON 转 CSV 在线转换

把 JSON 粘进下面的框,需要的话在表格里改一改,然后拿到 CSV。转换在你的浏览器里完成,文件不会上传,没有大小限制,也不用注册。

输入

The only part of this site that uses a server. The address is sent to it so the page can be fetched, because a browser is not allowed to fetch someone else's page itself. Your own files are never involved.

这里不上传任何东西,解析在本页完成。
编辑
在上面粘贴或上传内容,表格会显示在这里。
输出DataMarkupDocumentsCodeSchemasImages

有表格可以转换时,结果会显示在这里。

JSON 是什么

JSON 是描述嵌套数据的文本格式:带键名的对象、数组、字符串、数字、布尔值和 null。它没有日期类型,也没有注释语法。

所有 Web API、大部分配置文件,以及任何跟 JavaScript 打交道的东西。

CSV 是什么

CSV 是纯文本文件,一行一条记录,字段之间用逗号分隔。没有类型,没有格式,也没有第二个工作表。所有值在被下游程序解释之前都只是文本。

几乎所有数据库、分析工具和电子表格软件都能读写它,所以导出功能默认给的就是它。

JSON 转成 CSV 时会发生什么变化

四种结构都能正确读取:对象数组、带表头行的二维数组、每列一个数组的对象,以及以行 ID 为键的对象。大多数 API 返回的那种「外面套一层 key、里面是数组」的结构会自动拆开。嵌套一层会展平成带点的列名,再深的结构会以 JSON 文本留在单元格里,因为表格装不下一棵树。

值里如果含有分隔符、引号或换行,会被加上引号,内部的引号会写成两个。这是 RFC 4180 的规定,也是电子表格软件期望的写法。

示例

三行数据,其中有以零开头的编号、含逗号的值、含引号的值,以及一个空单元格。格式之间的差异主要就出现在这四个地方。

JSON 输入
[
  { "id": "007", "name": "Halima Yusuf", "role": "Analyst, data", "started": "2024-03-15", "hours": "38.5" },
  { "id": "012", "name": "Jonah \"Jo\" Pryce", "role": "Engineer", "started": "2025-11-02", "hours": "" },
  { "id": "104", "name": "Wei Chen", "role": "Manager", "started": "2023-06-30", "hours": "40" }
]
CSV 输出
id,name,role,started,hours
007,Halima Yusuf,"Analyst, data",2024-03-15,38.5
012,"Jonah ""Jo"" Pryce",Engineer,2025-11-02,
104,Wei Chen,Manager,2023-06-30,40

常见问题

怎么把 JSON 转成 CSV?

把 JSON 粘进上面的框,或者把文件拖进去。在表格里核对一下,然后从输出面板复制或下载 CSV。一步就够了,数据始终不离开你的浏览器。

为什么我的编号前面的零不见了?

数字识别把文本 007 变成了数字 7。正因为如此,这里默认不开启数字识别;即使开启,以零开头后面还跟数字的值也会保持为文本。

为什么我的 CSV 打开后所有数据都挤在一列里?

文件用的分隔符跟你的表格软件预期的不一样。中文版 Excel 按系统的“列表分隔符”来拆分,如果导出文件用的是逗号而系统设的是分号,就会不拆。在导入时手动指定分隔符即可。

文件大小有限制吗?

没有。处理是在你自己的机器上完成的,所以限制来自你的内存而不是上传额度。几万行的文件一两秒就转完了。

我的数据会被上传吗?

不会。解析和生成都是本页的 JavaScript 做的。你可以一边转换一边看浏览器的网络面板,会看到什么都没有发出去。

相关转换

其他语言: English