跳到正文

YAML 校验与 YAML ↔ JSON 转换

检查 YAML 是否有错误,并在 YAML 和 JSON 之间转换

正在加载工具…

找出 YAML 语法错误及其所在的行和列,并在 YAML 和 JSON 之间双向转换。可以用来查明 Docker Compose、Kubernetes 或 CI 配置等 YAML 文件为什么加载不了,或把 JSON 数据转成 YAML。

使用方法

  1. 把 YAML 粘贴到左侧的“YAML”框中,或点击“打开文件”。“JSON”框会立即更新,并显示“YAML 有效”或“YAML 错误”。
  2. 出现错误时,阅读原因和提示,然后点击“跳到该行”。如果缩进用了制表符,请点击“将制表符替换为空格”。
  3. 要把 JSON 转成 YAML,请把 JSON 粘贴到右侧的框中。“缩进”“按键名排序”和“多文档 ↔ JSON 数组”会改变结果。
  4. 用“保存 .yaml”或“保存 .json”下载结果。

计算方式与说明

常见问题

YAML 可以用 Tab 缩进吗?
不可以。YAML 只允许用空格缩进。发现制表符时,会在显示错误的同时给出“将制表符替换为空格”按钮。
为什么 YAML 会把 no 或 yes 变成 true 或 false?
YAML 1.1 解析器会把 yes、no、on 和 off 读作 true 或 false。在 YAML 1.2 中只有 true 和 false 是布尔值,但要让这个词保持为文本,最稳妥的做法是加上引号,例如 "no"。
为什么 0755 或 1.10 这样的值会变?
不加引号时它们会被读作数字,所以开头或末尾的零会消失。邮政编码、版本号和文件权限等必须保持原样的值,请加上引号。
YAML 冒号后面一定要加空格吗?
是的。键和值写作 key: value,冒号后面要有一个空格。没有空格时,key:value 会被读作一个字符串。