JSON转CSV供Excel查看:结构要求与常见问题指南
本文讲解JSON转Excel兼容CSV的结构规则、编码处理等细节,解决5类常见的打开异常问题
更新于 2026-08-11
可转表格的JSON结构要求
只有对象数组格式的JSON,才能平铺为CSV表格。这类JSON的顶层是数组,数组每个元素为结构相近的对象,每个对象的键可对应生成表格列,值对应生成单元格内容。
非对象数组的JSON无法直接转为二维表格,比如顶层为单个对象的JSON、顶层为纯值数组的JSON,均不符合二维表格的结构逻辑,无法生成规范表格。
- 符合要求的结构示例:[{"name":"张三","age":25},{"name":"李四","age":30}]
- 不符合要求的结构示例:{"data":[{"name":"张三"},{"name":"李四"}]}
嵌套字段的扁平化处理边界
JSON对象数组包含嵌套对象或数组时,多数转换工具会采用点分隔键名的方式展开嵌套对象,比如地址对象下的城市字段,会生成“地址.城市”这样的列名。
嵌套数组的处理通常存在边界,仅一级嵌套可保留逗号拼接的原始值存入对应单元格,超过一级的嵌套数组,会保留原始JSON格式字符串存入单元格,避免破坏表格二维结构。
CSV编码与中文乱码处理
Excel 2016及更早版本的Windows版本,直接打开UTF-8编码的CSV文件时,会默认使用GBK编码解析内容,中文字符因编码不匹配会出现乱码。
在UTF-8编码文件头部添加3字节的UTF-8 BOM标记,可让Windows系统的Excel自动识别为UTF-8编码,从而正确解析中文字符,消除乱码问题。
分隔符选择与Excel区域设置
CSV文件的默认分隔符与Excel区域设置匹配,才能正确分列显示。中文Windows系统默认的列表分隔符为逗号,多数情况下选择逗号作为分隔符即可正常分列。
部分欧洲区域系统默认分隔符为分号,若打开CSV后所有内容挤在同一列,可切换为对应分隔符重新生成CSV文件。
| 系统区域设置 | 推荐分隔符 |
|---|---|
| 中文中国大陆 | 逗号 |
| 部分欧洲地区 | 分号 |
| 纯文本导入Excel场景 | 制表符 |
长数字科学计数法的规避
Excel默认会对超过11位的数字自动启用科学计数法显示,同时超过15位的数字会自动末尾补零,无法保留原始数字字符串,对身份证、订单号这类数据影响较大。
转换CSV时在长数字字段添加半角双引号,并在开头添加一个半角单引号,可强制Excel将该内容识别为文本格式,保留原始长数字的完整内容。
常见问题
不是对象数组的JSON要怎么转Excel?
先提取内层对象数组再转换,多数工具支持指定JSON路径提取目标数组,提取规则以转换工具文档为准。
添加UTF-8 BOM会影响其他软件读取CSV吗?
多数现代编程语言与文本编辑器都可兼容带BOM的UTF-8文件,仅部分Linux环境工具可能出现头部多余字符,需按需选择。
OKfmt的JSON转CSV工具收费吗?
该在线转换工具提供免费转换额度,具体额度与付费规则以官网当前公示为准。