JSON 转 CSV
把 JSON 对象数组转换成可直接用 Excel 或 Google 表格打开的 CSV 表格。列名自动从字段名识别,嵌套值以 JSON 文本保留。
把 JSON 对象数组变成一张 CSV 表格:Excel、Google 表格、Numbers 和 LibreOffice 打开时就已经按列分好。列名来自对象的键,取的是所有键的并集,所以缺少某些字段的行也能正确对齐。
当 API 返回了你想要排序、筛选或制图的数据时,这是标准的一步:取回 JSON,粘到这里,电子表格就绪。本身就是对象或数组的值会以 JSON 文本的形式保存在单元格里,因此不会有数据被悄悄丢掉。
如何把 JSON 转换成 CSV
粘贴一个由对象组成的 JSON 数组
检查识别出的列
复制或下载 CSV
常见问题
它期望什么样的 JSON 结构?
由对象组成的数组,例如 [{"name":"Ana","age":31}, ...]。单个对象会被当成一行;层级很深的嵌套结构会被压平成单元格内的 JSON 文本。
列名是怎么定的?
取自对象的键。数组里任何位置出现过的键都会成为一列,缺失的值留空。
数据里的逗号和引号安全吗?
安全,含有逗号、引号或换行的值会按 CSV 标准加引号并转义,所以文件打开后列数是正确的。
为什么 Excel 把内容都显示在一列里?
Excel 直接打开 .csv 时可能猜错分隔符。请用「数据 > 从文本/CSV」并选择逗号作为分隔符,或者把文件另存为 .xlsx。
嵌套对象会怎么处理?
它们会以 JSON 文本的形式写进单元格,而不是展开成列,这样原始结构得以保留,之后还能重新解析。
我的数据会被上传吗?
不会,转换在你的浏览器里进行——当 JSON 里含有客户记录时,这一点尤其重要。
一览
| 输入 | JSON |
|---|---|
| 多个文件 | 否 |
| 运行位置 | 在你的浏览器中——文件永远不会被上传 |
| 离线可用 | 是 — 页面加载完成后 |
| 价格 | 免费,无需注册,无水印 |
选择数据格式
JSON 是 API 返回以及程序读取的任何数据的默认格式:它天然处理嵌套结构、数字、布尔值和 null,而且每种语言都能解析它。CSV 更小,能直接打开进表格软件,但它无法表达嵌套,在分隔符、引号规则和字符集上也没有共同标准——而这正是转换出错的地方。XML 冗长,但能承载属性、混合内容和模式,所以它仍然主导着文档格式和遗留系统集成。YAML 对配置来说最易读,但它对空白敏感,还有出人意料的类型强制转换(「no」会变成 false,像 1.10 这样的版本号会变成 1.1)。请选择使用方工具偏好的格式,而不是看起来最漂亮的格式。
转换在哪里悄悄出错
大多数转换缺陷与语法无关,而与含义有关。一列邮编的 CSV 字段会在表格软件猜它是数字的那一刻丢掉前导零;一个很长的 ID 会超出浮点精度;日期会因为先写日还是先写月而意思大变。JSON 的键是无序的,但数组是有序的,排序键的工具不会改变任何东西,而排序数组的工具会改变数据。Unicode 是另一个陷阱:文本可能以 UTF-8、UTF-16 或带字节顺序标记的形式到来,解码器猜错就会把带重音的字符变成乱码。在信任任何转换之前,抽查第一行和最后一行、任何带前导零的字段,以及任何含有引号、逗号或换行的字段。