JSON 转 CSV - 把嵌套数据摊平

2on /
/ 转换工具 / JSON 转 CSV

JSON 转 CSV 工具

这个工具能做什么

有人发来一份 API 响应,另一个人要的是一张表格。活儿就是这个——而且比看上去难,因为 JSON 是一棵树,表格是一张网格。这个页面替你做出把前者变成后者的三个决定,并把决定的结果摊给你看。

使用方法

  1. 1 粘贴 JSON,或者拖一个 .json 文件进来。
  2. 2 选好分隔符——文件要给 Excel 就用分号。
  3. 3 点转换,然后复制结果或者下载 .csv。

树塞不进网格,所以要摊平

嵌套对象会变成带点的列名:{"city":{"name":"London"}} 变成 city.name 这一列。不这么做的话,转换器会往单元格里写「[object Object]」——文件能打开,看着也没毛病,可你的数据少了一半。纯值组成的列表会合进一个单元格;含对象的列表则拆成带编号的列。

JSON
[
  {
    "name": "Ada",
    "city": { "name": "London" },
    "note": "Loves \"tea\""
  },
  {
    "name": "Grace",
    "city": { "name": "New York, NY" },
    "tags": ["math", "navy"]
  }
]
CSV
name,city.name,note,tags
Ada,London,"Loves ""tea""",
Grace,"New York, NY",,math; navy

列名来自所有行,不是第一行

真实数据里,各条记录的字段很少完全一致:某个可选字段直到第四十条才出现,之前一次都没有。只读第一条记录的转换器会悄悄丢掉那一列,而输出里没有任何提示。这里的表头是所有出现过的键的并集,按首次出现的顺序排列;缺字段的记录留空单元格。

一个走丢的逗号就能挪错所有列

凡是含有分隔符、引号或者换行的值,都必须用引号包起来,里面的引号还要写两遍。这是 CSV 标准的要求,也是转换器最常出错的地方。一个带逗号的地址、一条带换行的备注、一个带撇号的名字——只要跳过这一步,每一个都会悄悄毁掉整份文件。

Excel 会用两种不同的方式毁掉 CSV

第一,没有字节序标记时,它把 UTF-8 当成本地代码页来读,带音标的字母和非拉丁字符全成了乱码。第二,在许多地区它等的是分号而不是逗号,于是把每一行都塞进同一列。这两件事在这里都是选项,而且默认都关着——因为标准说的是逗号、不加标记,而且文件多半是给脚本的,不是给表格软件的。

JSON 转 CSV - 常见问题

对象变成带点的列名,user.address.city 就是一列。纯值数组会用「; 」连成一个单元格——这个可以关掉,改成带编号的列。含对象的数组一律拆成带编号的列(tags.0.name、tags.1.name),因为塞进一个格子会把结构整个弄丢。
PDF 转文本 不上传即可提取 PDF 里的文字。选择页码范围,保留换行或让段落连贯,然后复制或下载 .txt 文件。
今日热门
JPG转WebP 免费把 JPG 转为 WebP:自选画质,显著减小图片体积让网页更快,全程在浏览器中完成。

相关转换工具

Word转PDF 免费把 Word 转成 PDF:上传 DOC、DOCX、ODT 或 RTF 文件,几秒内下载排版完好的 PDF,无需注册。
PDF转Word 免费把 PDF 转成 Word:上传 PDF,几秒内下载可编辑的 DOCX 文件,无需注册,也没有水印。
图片转换器 免费图片转换器:选择 PNG、JPG、WebP、GIF 或 BMP,在浏览器中完成转换,照片不会上传到服务器。
WebP转PNG 免费把 WebP 转为 PNG:保留透明度,图片始终留在你的设备上,整个转换都在浏览器中完成。
PNG转JPG 免费把 PNG 转为 JPG:可选择画质和透明区域的背景色,全程在浏览器中完成,无需上传。

您可能喜欢的其他工具

MD5生成器 免费 MD5 生成器:在浏览器中把文本或文件转换为 MD5 校验值,适合完整性校验与快速比对。
Base64编码器和解码器 免费 Base64 编码与解码:在浏览器中将文本或文件转为 Base64 并还原,数据不会上传到服务器。
字数统计器 免费字数统计:粘贴文本即可统计字数、字符、句子与段落,并估算阅读时间,内容不会离开浏览器。
字符计数器 免费字符统计:统计含空格与不含空格的字符数、词数和行数,并检查标题与元描述的 SEO 长度限制。
关键词密度检查器 免费关键词密度分析:粘贴文本或网址,查看每个词与短语出现的次数及占比,辅助内容优化。