跳到正文
马克工具箱

JSON 转 Excel

粘贴 JSON 数组(例如接口返回的数据),下载为 .xlsx 工作簿。所有对象的键都会成为列,缺少某些字段的记录也能正确对齐。

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

或把 .csv、.json 文件拖到这里

使用步骤

  1. 粘贴 JSON 或打开 .json 文件。
  2. 查看预览,任何对象中出现的键都会成为一列。
  3. 下载 .xlsx 文件。

参数说明

支持的结构
对象数组([{"a": 1}])、二维数组([[1, 2]]),或者包着数组的对象,例如 {"data": [...]},此时取第一个数组字段。
嵌套值
记录中的对象和数组会以 JSON 文本写入一个单元格。如需展开,可先用 JSON 格式化工具处理。
数据类型
数字和布尔值写成 Excel 数值和 TRUE/FALSE,null 对应空单元格。

示例:键不一致的记录

假设数组里有两条记录,字段并不相同:

[
  {"name": "Ada", "age": 36, "tags": ["a", "b"]},
  {"name": "Bob", "city": "Rome", "active": true}
]

列是所有键按首次出现的顺序排列,缺少某个键的记录,对应单元格留空:

name age tags city active
Ada 36 [“a”,“b”]
Bob Rome TRUE

tags 数组会以 JSON 文本的形式写入一个单元格,true 变成 Excel 的值 TRUE。如果最外层是数组的数组,则第一行原样使用,不会生成表头。

常见问题

列的顺序是怎样的?

按各个键在数组中第一次出现的顺序排列。

能生成多个工作表吗?

每次转换生成一个工作表。需要多个时,可以分别转换后在 Excel 中合并。

怎样保证身份证号等长数字不丢位?

在 JSON 中用字符串表示,例如 "110101199003074514"。不加引号的超过 15~16 位的数字在任何 JavaScript 程序读取时都会丢失精度;字符串则始终按文本写入 Excel。

隐私说明

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

相关工具