YAML 和 JSON 互转
YAML 和 JSON 是最常用的两种配置和结构化数据格式。Kubernetes 资源清单、Docker Compose 文件、CI 流水线和 OpenAPI 规范通常使用 YAML 编写,而 API、JavaScript 代码及许多工具则主要使用 JSON。本转换器支持边输入边进行双向实时转换,并在输入内容无效时提供精准的错误提示。
功能特点
- 双向转换:YAML → JSON 和 JSON → YAML,支持一键切换。
- 语法验证:针对缩进错误、引号未闭合和无效 JSON 提供清晰的错误提示。
- 多文档 YAML:自动转换为 JSON 数组。
- 锚点、别名和合并键:自动解析。
- 2 或 4 个空格缩进:支持自定义输出缩进。
- 复制或下载:将结果保存为
.json或.yaml文件。 - 隐私保护:所有操作均在本地完成,不会向服务器发送任何数据。
示例
以下 YAML:
name: web-app
replicas: 3
ports:
- 80
- 443
env:
NODE_ENV: production
将转换为以下 JSON:
{
"name": "web-app",
"replicas": 3,
"ports": [80, 443],
"env": {
"NODE_ENV": "production"
}
}
常见的 YAML 错误
- 使用 Tab 缩进。 YAML 仅允许使用空格。请将 Tab 替换为两个空格。
- 缩进不一致。 同一层级的项目必须保持完全相同的缩进量。
- 冒号后缺少空格。
key:value会被读取为单个字符串;请写成key: value。 - 字符串中包含特殊字符。 以
@、*、&、!、%、{或[开头,或者包含:的值,需要加引号。 - 意外的数据类型。 像
1.10这样的版本号会变成数字 1.1,并且前导零可能会丢失。对于必须保持文本格式的值,请加上引号。
相关工具
使用 JSON 格式化工具 美化或压缩生成的 JSON,使用 JSON 转 CSV 将 JSON 转换为电子表格,或者使用 文本对比工具 比较两个配置文件。