使用方法
- 将 JSON 粘贴到输入框,或试用示例。
- 选择缩进为 2 个或 4 个空格。
- 复制 YAML 或将其下载为 .yaml 文件。
工作原理
JSON 会被严格解析;语法错误会说明行号和列号(结尾逗号、单引号、注释等)。然后使用开源 yaml 库将数据写成块式 YAML,保留键顺序,并且不会折行长字符串。
旧版 YAML 1.1 解析器可能会误读的字符串会加引号:yes、no、on、off、带前导零的数字(如 0777)以及类似日期的值(如 2024-01-31)。这样无论使用哪种解析器,YAML 的含义都相同。多行字符串会保留换行符。
JSON 数字、布尔值和 null 直接映射到 YAML。反向转换请使用 YAML 转 JSON,或双向 JSON ⇄ YAML 转换器。
示例
Kubernetes 清单
粘贴 kubectl get -o json 输出的 JSON,即可获得可编辑并应用的同一对象 YAML。
必须保持为字符串的值
{"enabled": "on", "mode": "0755"} 会变成 enabled: "on" 和 mode: "0755",因此两者都不会被转为布尔值或八进制数。
常见问题
为什么有些值带有引号?
因为不加引号时,某些 YAML 解析器会把它们读成布尔值、数字或日期。加引号可以使其保持为字符串。
可以转换带注释的 JSON 吗?
不能。注释不是合法的 JSON;错误信息会指出注释位置,方便你删除。
会保留键顺序吗?
可以。键会按 JSON 中的原有顺序写入。
隐私
转换完全在您的浏览器中进行。您的 JSON 和 YAML 不会上传或存储。