怎么把Excel导入JSON:实用方法与工具全解析
在数据处理中,Excel和JSON是两种最常用的格式:Excel擅长表格化存储和编辑,而JSON是Web开发中数据交换的“通用语言”,将Excel数据导入JSON,能实现数据从“办公场景”到“开发场景”的无缝衔接,本文将以“小白也能看懂”为原则,从准备工作到具体操作,详解Excel导入JSON的多种方法,涵盖手动转换、代码工具、在线平台及专业软件,适合不同需求的读者选择。
准备工作:Excel数据“标准化”是关键
无论用哪种方法,先把Excel表格整理成“适合转JSON的结构”,能避免后续80%的麻烦,核心原则是:每行数据对应一个JSON对象,每列数据对应对象的键,具体步骤如下:
确保Excel表头规范
- 表头必须是字符串类型(避免数字、特殊符号),且不能重复(后续JSON键名唯一)。
- 示例:如果列存的是“用户姓名”,表头可简化为
name;存“注册时间”,表头用register_time(符合JSON的驼峰或下划线命名规范)。
检查数据类型一致性
- 每列的数据类型尽量统一(如“年龄”列全是数字,“性别”列全是“男/女”),避免混用文本和数字(如“年龄”列既有
25又有"25",JSON转换后可能变成字符串,影响后续使用)。
删除无关行/列
- 删除Excel中的合计行、空行、合并单元格(合并单元格会导致数据错位,转换时需先“取消合并”并填充内容)。
保存Excel文件
- 转换前建议将Excel另存为
.xlsx(新版Excel)或.xls(旧版),避免.csv可能带来的编码问题(如中文乱码)。
完成以上步骤后,你的Excel表格应该是一个“干净”的二维结构,如下所示:
| id | name | age | city |
|---|---|---|---|
| 1 | 张三 | 25 | 北京 |
| 2 | 李四 | 30 | 上海 |
| 3 | 王五 | 28 | 广州 |
方法1:手动转换(少量数据“零门槛”)
如果你的Excel数据量很小(比如10行以内),手动转换最快,无需任何工具,操作分两步:Excel提取数据 → 手动拼接JSON。
步骤1:从Excel复制数据
选中需要转换的数据区域(不含表头的全选,或包含表头选“数据区域”),按Ctrl+C复制。
步骤2:手动拼接JSON
根据Excel的行列关系,手动构建JSON数组:
- 每行数据对应一个对象,列名作为
key,单元格内容作为value。 - 所有行用
[]包裹,形成JSON数组。
面的Excel为例,手动拼接的JSON如下:
[
{
"id": 1,
"name": "张三",
"age": 25,
"city": "北京"
},
{
"id": 2,
"name": "李四",
"age": 30,
"city": "上海"
},
{
"id": 3,
"name": "王五",
"age": 28,
"city": "广州"
}
]
优点:
- 无需工具,打开Excel就能操作;
- 完全可控,能自定义JSON结构(如嵌套对象)。
缺点:
- 数据量大时(超过20行)容易出错,效率极低;
- 无法处理复杂结构(如Excel中的“多行合并为一行JSON对象”)。
方法2:代码转换(开发者首选,灵活高效)
如果你懂一点编程(Python/JavaScript),用代码转换是最佳选择:批量处理、自定义格式、可复用,下面以最常用的Python为例,讲解具体操作(无需安装复杂软件,几行代码搞定)。
环境准备
- 安装Python(官网下载安装即可,建议3.8+版本);
- 安装
pandas库(Excel数据处理的“神器”):打开命令行,运行pip install pandas。
操作步骤
读取Excel文件
用pandas.read_excel()读取Excel数据,自动将表格转为DataFrame(Python的二维数据结构):
import pandas as pd
# 读取Excel文件("data.xlsx"是文件名,"Sheet1"是工作表名,若无表名可省略)
df = pd.read_excel("data.xlsx", sheet_name="Sheet1")
转换为JSON
用df.to_json()方法将DataFrame转为JSON,核心参数:
orient="records":按行转JSON数组(每行一个对象,最常用);force_ascii=False:避免中文被转义(如\u5f20\u4e09转为张三);indent=2:格式化输出(缩进2空格,JSON更易读)。
代码:
# 转换为JSON(records格式,数组包裹,每行一个对象)
json_data = df.to_json(
orient="records",
force_ascii=False,
indent=2
)
# 保存到文件("output.json"是目标文件名)
with open("output.json", "w", encoding="utf-8") as f:
f.write(json_data)
print("转换完成!JSON已保存到output.json")
运行代码
将上述代码保存为excel_to_json.py,与Excel文件放在同一文件夹,命令行运行python excel_to_json.py,即可在同目录生成output.json。
效果展示
生成的output.json内容如下:
[
{
"id": 1,
"name": "张三",
"age": 25,
"city": "北京"
},
{
"id": 2,
"name": "李四",
"age": 30,
"city": "上海"
},
{
"id": 3,
"name": "王五",
"age": 28,
"city": "广州"
}
]
进阶:自定义JSON结构
如果Excel中有多列需要合并为一个嵌套对象(如“省份”和“城市”合并为“address”对象),可先处理DataFrame再转JSON:
# 假设Excel有"province"和"city"两列,合并为"address"对象
df["address"] = df[["province", "city"]].apply(lambda x: {"province": x["province"], "city": x["city"]}, axis=1)
# 删除原列(可选)
df = df.drop(columns=["province", "city"])
# 转换JSON
json_data = df.to_json(orient="records", force_ascii=False, indent=2)
优点:
- 支持批量处理(百万行数据也能秒转);
- 灵活自定义JSON结构(嵌套、过滤、计算等);
- 免费、开源,可集成到自动化流程中。
缺点:
- 需要基础Python知识;
- 复杂格式(如多sheet合并)需额外代码。
方法3:在线工具转换(无需编程,快速便捷)
如果你不想写代码,又不想安装软件,“在线Excel转JSON工具”是最佳选择,只需上传文件,点击转换,即可下载JSON结果。
推荐工具
- Convertio(https://convertio.co/zh/excel-json/):支持Excel(.xlsx/.xls)和JSON互转,操作简单;
- Aconvert(https://www.aconvert.com/cn/excel-to-json/):免费、无广告,支持批量转换;
- Code Beautify(https://codebeautify.org/excel-to-json-converter):可预览JSON格式,支持自定义输出结构。
操作步骤(以Convertio为例)
- 打开Convertio官网,点击“选择文件”上传Excel(支持拖拽上传);
- 在“转换为”下拉框中选择“JSON”;
- 点击“转换”按钮,等待几秒(文件越大耗时越长);
- 转换完成后,点击“下载”保存JSON文件。
注意事项
- 隐私安全:避免上传包含敏感信息(如身份证号、手机号)的Excel文件,以防数据泄露;
- 文件大小:在线工具通常对文件大小有限制(如不超过50MB),大文件建议用代码或专业软件;
- 格式兼容:



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