以下是一些常用的 JSON 格式转换工具及使用方法的推荐,涵盖在线工具、代码库和命令行工具,适合不同场景需求:
1. 在线工具(无需安装)
① JSON Formatter & Validator
- 网址: https://jsonformatter.org/
- 功能:
- 格式化压缩的 JSON 为可读样式。
- 验证 JSON 语法错误。
- 支持 JSON 转 XML、YAML、CSV 等格式。
- 用法:
- 粘贴 JSON 到输入框。
- 点击
Format
或Validate
。 - 选择输出格式(如转 XML)。
② JSON to Go Struct (生成代码)
- 网址: https://mholt.github.io/json-to-go/
- 功能:
- 将 JSON 自动转换为 Go 结构体。
- 支持其他语言(如 TypeScript、Python)。
- 用法:
- 粘贴 JSON 数据。
- 复制生成的 Go 结构体代码。
2. 代码库(编程实现)
① Python: json
模块
import json
# JSON 字符串转 Python 字典
json_str = '{"name": "Alice", "age": 25}'
data = json.loads(json_str)
# 字典转格式化 JSON
formatted_json = json.dumps(data, indent=2)
print(formatted_json)
② JavaScript: JSON.parse()
和 JSON.stringify()
// JSON 字符串转对象
const jsonStr = '{"name": "Bob", "items": [1, 2]}';
const obj = JSON.parse(jsonStr);
// 对象转美化 JSON
const prettyJson = JSON.stringify(obj, null, 2);
console.log(prettyJson);
3. 命令行工具
① jq
(强大且轻量)
- 安装:
- macOS:
brew install jq
- Linux:
sudo apt install jq
- macOS:
- 用法示例:
# 格式化 JSON 文件 cat data.json | jq '.' # 提取字段(如获取 "name" 的值) echo '{"name": "Alice"}' | jq '.name'
② Python json.tool
# 格式化 JSON 文件
python3 -m json.tool unformatted.json > formatted.json
4. 其他实用工具
- VS Code 插件:
安装Prettier
或JSON Tools
,右键格式化 JSON 文件。 - Postman:
请求返回 JSON 时,自动格式化并支持转换其他格式。
常见场景解决方案
-
压缩 JSON
- 在线工具: 去掉缩进(如 JSON Formatter 的
Minify
选项)。 - Python:
json.dumps(data, separators=(',', ':'))
- 在线工具: 去掉缩进(如 JSON Formatter 的
-
JSON 转 Excel/CSV
-
修复无效 JSON
- 尝试 https://jsonlint.com/ 自动修正。
根据你的需求选择工具:
- 快速查看 → 在线格式化工具
- 编程处理 → 代码库(如 Python/JS)
- 批量处理 → 命令行工具(如
jq
)