使用步骤
- 在左侧粘贴 YAML,或点击「载入示例」。
- 选择 JSON 的缩进,结果实时更新。
- 按提示修正错误,错误信息包含行号。
- 复制或下载 JSON。
参数说明
- 锚点与别名
- &name 定义可复用的内容块,*name 引用它。转成 JSON 时被引用的内容会完整复制一份。
- 多行字符串
- | 保留换行,> 把多行折叠成空格。两者都会变成普通 JSON 字符串,保留的换行写作 \n。
- 重复键
- YAML 规定同一映射中不能出现重复的键,但很多解析器会默默保留最后一个。本工具会把它报为错误,避免问题被掩盖。
示例
YAML:
defaults: &defaults
retries: 3
timeout: 30
production:
<<: *defaults
timeout: 60
JSON:
{
"defaults": { "retries": 3, "timeout": 30 },
"production": { "retries": 3, "timeout": 60 }
}
常见问题
为什么提示缩进错误?
YAML 用缩进表示层级,而且不允许使用 Tab。请确保同一列表或映射中的项从同一列开始,并且只用空格缩进。
注释会怎样?
JSON 不支持注释,转换时会被丢弃。
yes/no、on/off 会怎么转换?
本工具遵循 YAML 1.2,只有 true 和 false 是布尔值,yes、no、on、off 仍是字符串。老的 YAML 1.1 解析器(包括 PyYAML)会把它们当作布尔值,共享配置时建议给这些值加引号。
能转换用 --- 分隔的多个文档吗?
可以。每个文档会按顺序成为 JSON 数组中的一个元素。
隐私说明
本工具完全在浏览器中运行,文件和文本都在你的设备上处理,不会上传到我们的服务器。