Excel文件怎么转化成json:实用方法全解析
在数据处理和开发工作中,Excel因其直观的表格形式被广泛使用,但许多现代应用(如Web开发、API对接、数据分析工具)更倾向于使用JSON格式——它轻量、易读,且能直接与JavaScript等语言无缝集成,如何将Excel文件转化为JSON呢?本文将介绍4种常用方法,从手动操作到自动化工具,覆盖不同需求场景,助你轻松完成转换。
手动复制粘贴(适合小文件,快速但低效)
对于数据量极小的Excel文件(如几行几列的简单表格),手动转换是最直接的方式。
操作步骤:
- 打开Excel文件,选中需要转换的数据区域(确保数据包含表头,JSON会以表头作为键名)。
- 复制数据:按
Ctrl+C(或右键点击“复制”)。 - 粘贴到文本编辑器:打开记事本、VS Code等工具,按
Ctrl+V粘贴,此时数据是制表符或逗号分隔的文本。 - 调整格式为JSON:
- 将第一行表头用双引号包裹,用冒号与值分隔(如
"姓名":"张三")。 - 每行数据用大括号包裹,行与行之间用逗号分隔,整体用方括号
[]包裹(数组格式)。
示例:[ {"姓名":"张三","年龄":25,"城市":"北京"}, {"姓名":"李四","年龄":30,"城市":"上海"} ]
- 将第一行表头用双引号包裹,用冒号与值分隔(如
优缺点:
- 优点:无需工具,零学习成本。
- 缺点:数据量大时易出错,效率极低,不适用于复杂表格(如合并单元格、多 sheet)。
使用在线转换工具(适合非技术人员,无需安装软件)
如果你不想安装额外软件,且数据涉及敏感信息需谨慎使用(建议选择可信平台),在线工具是便捷选择。
推荐工具:
- Convertio(https://convertio.co/zh/excel-json/)
- Aconvert(https://www.aconvert.com/cn/excel-to-json/)
- Excel Online to JSON(https://jsonconverter.io/excel-to-json/)
操作步骤(以Convertio为例):
- 上传Excel文件:打开网站,点击“选择文件”,从本地电脑上传Excel(支持
.xlsx、.xls格式)。 - 设置转换参数:选择“Excel转JSON”,可勾选“是否将第一行作为JSON键名”(推荐勾选)。
- 开始转换:点击“转换”按钮,等待几秒处理完成。
- 下载结果:转换后预览JSON内容,点击“下载”保存到本地。
优缺点:
- 优点:操作简单,无需安装,支持批量转换(部分工具)。
- 缺点:依赖网络,文件大小受限(通常免费版限制10-50MB),敏感数据存在泄露风险。
利用Excel内置功能(适合Excel 2016及以上版本,无需插件)
Excel 2016及后续版本(含Microsoft 365)内置了“从表格/区域创建JSON”的功能,适合需要快速导出少量数据的场景。
操作步骤:
- 准备数据:确保Excel数据区域包含表头,且无合并单元格(否则可能转换失败),选中数据区域,点击“插入”→“表格”,勾选“表包含标题”,确定后数据会被标记为“超级表”。
- 打开“Power Query编辑器”:点击“数据”→“从表格/区域”,进入Power Query编辑界面。
- 导出为JSON:在Power Query中,点击“转换”选项卡→“导出”→“导出为JSON文件”,选择保存路径即可。
注意事项:
- 此方法本质是通过Power Query(Excel的数据处理工具)转换,适合结构化规整的数据。
- 若数据包含复杂格式(如日期、公式),需先在Power Query中调整数据类型(如“日期”列需手动设置为“日期”格式,避免JSON中显示为时间戳)。
优缺点:
- 优点:无需第三方工具,原生支持,可处理部分复杂数据。
- 缺点:仅限新版Excel,对合并单元格、多 sheet 支持不佳。
编程自动化转换(适合开发者,高效且灵活)
当数据量较大(如上万行)或需要批量转换多个Excel文件时,编程方法是最佳选择——通过Python、Node.js等语言,可自定义JSON结构、处理复杂逻辑,甚至实现自动化流程。
推荐语言:Python(库丰富,语法简单)
所需库:
pandas:读取Excel文件,处理数据。json:将数据转换为JSON格式。
安装库:
pip install pandas openpyxl # openpyxl用于读取.xlsx文件
代码示例(基础版):
import pandas as pd
import json
# 读取Excel文件(支持.xlsx和.xls)
df = pd.read_excel('data.xlsx', sheet_name='Sheet1') # 'data.xlsx'为文件名,'Sheet1'为工作表名
# 将DataFrame转为字典(第一行作为键名)
data_dict = df.to_dict(orient='records') # orient='records'转为列表格式,每个元素是字典
# 保存为JSON文件
with open('output.json', 'w', encoding='utf-8') as f:
json.dump(data_dict, f, ensure_ascii=False, indent=2) # ensure_ascii=False支持中文,indent=2格式化缩进
print("转换完成!JSON文件已保存为output.json")
进阶技巧(自定义JSON结构):
若需调整JSON字段名或嵌套结构,可在转换前修改DataFrame:
# 重命名列(Excel列名→JSON键名)
df = df.rename(columns={'姓名': 'name', '年龄': 'age', '城市': 'city'})
# 添加嵌套结构(如将“城市”和“年龄”合并为“info”字段)
data_dict = []
for _, row in df.iterrows():
item = {
"user_name": row['name'],
"info": {
"years": row['age'],
"location": row['city']
}
}
data_dict.append(item)
# 保存为JSON
with open('output_nested.json', 'w', encoding='utf-8') as f:
json.dump(data_dict, f, ensure_ascii=False, indent=2)
其他语言:
- Node.js:使用
exceljs读取Excel,jsonfile写入JSON。 - Java:使用
Apache POI解析Excel,Jackson或Gson生成JSON。
优缺点:
- 优点:高效处理大数据,可自定义逻辑,支持批量自动化,适合开发场景。
- 缺点:需编程基础,需安装环境和库。
如何选择合适的方法?
| 方法 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| 手动复制粘贴 | 极小文件(<10行),临时需求 | 无需工具 | 效率低,易出错 |
| 在线转换工具 | 非技术人员,小文件(<50MB) | 操作简单,无需安装 | 网络依赖,数据安全风险 |
| Excel内置功能 | 新版Excel用户,结构化数据 | 原生支持,无需插件 | 功能有限,对复杂数据支持不佳 |
| 编程自动化(Python等) | 开发者,大数据/批量转换,需自定义逻辑 | 高效灵活,可自动化 | 需编程基础 |
根据你的数据量、技术背景和需求场景,选择最适合的方法即可,如果是偶尔转换小文件,在线工具或Excel内置功能足够;若需频繁处理数据或集成到工作流,Python编程会是“一劳永逸”的选择,希望本文能帮你轻松实现Excel到JSON的转换!



还没有评论,来说两句吧...