tigtools

JSON 转 YAML 转换器

粘贴 JSON,即可获得适用于配置文件、Kubernetes 清单或 CI 管道的块式 YAML。不会上传任何内容。

在浏览器中运行 无需注册

缩进

改为将 YAML 转换为 JSON

使用方法

  1. 将 JSON 粘贴到输入框,或试用示例。
  2. 选择缩进为 2 个或 4 个空格。
  3. 复制 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 不会上传或存储。