免费使用 · 无需注册 · 数据本地处理

YAML 与 JSON 互转

YAML 转 JSON、JSON 转 YAML 双向转换,缩进可选 2 或 4 空格,支持注释与嵌套结构。

使用指南

  1. 选方向并粘贴

    YAML → JSON 用于核对配置解析出来的结构,JSON → YAML 用于把接口返回的数据整理成配置文件。

  2. 调缩进

    生成 YAML 时按项目习惯选 2 或 4 空格,Python 生态常用 2,JavaScript 项目和 k8s 清单常用 4。

  3. 看统计

    解析出的键数量和行数可以快速确认有没有漏掉内容;出错时提示会指出第几行。

常见问题

YAML 转出来的 JSON 顺序会变吗?

不会。解析器按文件里的出现顺序保留键的顺序,JSON 输出同样保持这个顺序,所以配置文件的 diff 不会出现无关的顺序抖动。

为什么有些字符串会被加上引号?

因为不加就可能被读成别的类型。比如字符串 123 加引号才是字符串,不加引号 YAML 会当数字;值里有冒号、井号或者首尾有空格,加引号才不会解析出错。这是 YAML 的类型推断规则决定的,工具主动加上可以保证来回转换不丢信息。

哪些 YAML 写法不支持?

锚点与别名(& 和 *)、多行块标量(| 和 >)、复杂键(? 显式键)、流式集合跨多行这些都没做,因为它们在配置文件里很少用到,而支持它们会让解析器复杂很多。遇到不支持的写法会明确告诉你第几行、哪一段有问题,不会静默丢掉。

YAML 和 JSON 该用哪个?

配置文件用 YAML:可读、能写注释、层级清楚。接口传输用 JSON:所有语言都能解析,没有缩进和类型推断的坑。如果配置要给程序读、也要给人看,YAML 更合适;如果只是机器之间传数据,JSON 更省心。

更多在线工具