JSON处理,你是不是也踩过这些坑?
一段嵌套很深的JSON,格式乱七八糟,找不到想要的字段。
想从JSON里抽几个值导成CSV,还得写Python脚本?
别折腾了。3个技巧,打开浏览器就能搞定。
技巧一:JSON格式化,告别"看天书"
场景: 复制了一段API返回的JSON,密密麻麻全是字符,根本看不出来结构。
手动调缩进?太慢了。
操作步骤:
- 打开 navbox.com.cn/tools/json-formatter/
- 粘贴你的JSON字符串
- 自动缩进展开,层级一目了然
- 支持折叠/展开节点,点击箭头就能切换
举个例子,这段JSON:
{"name":"张三","age":28,"address":{"city":"北京","zip":"100000"},"skills":["Go","Python","Docker"]}
格式化后变成:
{
"name": "张三",
"age": 28,
"address": {
"city": "北京",
"zip": "100000"
},
"skills": [
"Go",
"Python",
"Docker"
]
}
瞬间清晰了。
进阶技巧: 如果JSON很大,工具支持语法高亮和错误检测。格式不对的地方会标红提示,比肉眼找bug快多了。
技巧二:JSON路径查询,精准定位数据
场景: JSON有好几层嵌套,你只想拿到某个具体的值。比如从API返回里取"user.address.city"。
用grep?正则?太麻烦了。
操作步骤:
- 打开 navbox.com.cn/tools/json-path-finder/
- 粘贴JSON数据
- 输入查询表达式,比如
.address.city或$.skills[0] - 点查询,结果直接显示
支持的路径语法:
.表示子对象,比如.name[]表示数组索引,比如skills[0]*表示通配,比如.skills[*]获取所有技能
实际例子:
假设你有这段用户数据:
{
"users": [
{"name": "Alice", "role": "admin"},
{"name": "Bob", "role": "user"},
{"name": "Charlie", "role": "user"}
]
}
查所有用户名:.users[*].name → 得到 Alice, Bob, Charlie。
查管理员:.users[?(@.role=="admin")].name → 只返回 Alice。
这个功能特别适合调试API接口。不用写代码,直接在浏览器里验证数据结构对不对。
技巧三:JSON转CSV,导出表格超方便
场景: 老板让你把API数据导成Excel。JSON格式没法直接开。
写个转换脚本?一行两行还行,数据量大就抓狂了。
操作步骤:
- 打开 navbox.com.cn/tools/json-to-csv/
- 粘贴JSON数组数据
- 工具自动识别字段,生成CSV预览
- 一键下载CSV文件
注意:JSON得是数组格式才行。比如:
[
{"name": "张三", "age": 28, "city": "北京"},
{"name": "李四", "age": 32, "city": "上海"},
{"name": "王五", "age": 25, "city": "深圳"}
]
转成CSV后:
name,age,city
张三,28,北京
李四,32,上海
王五,25,深圳
直接丢给Excel,完美。
进阶用法: 如果JSON里有嵌套对象或数组,工具默认把它们序列化成字符串。你也可以手动指定要展平的字段,避免数据被塞到一个单元格里。
三个技巧组合起来怎么用?
日常工作中,这三个技巧经常连着用:
第一步,格式化JSON,确认数据结构没问题。
第二步,用路径查询,验证能准确拿到你要的字段。
第三步,转成CSV,导出给同事或者存到数据库。
整个过程不需要装任何软件,不需要写一行代码。打开navbox,三步搞定。
小结
JSON处理其实没那么复杂。关键是找到合适的工具。
- 格式化 → 看清结构
- 路径查询 → 精准取值
- 转CSV → 导出数据
这三个操作覆盖了90%的JSON处理场景。
下次再遇到JSON数据,别急着写脚本了。试试在线工具,省下的时间喝杯咖啡不香吗?