实用工具

JSON 与 YAML 互转

JSON 转 YAML,YAML 转 JSON,两个方向都能走。

浏览器本地运行数据格式1691
免费

输入

0 B50.0 KB 以内免费

结果

结果会显示在这里。

你的运行记录

只有消耗积分的运行才会保存。

登录后可以保留你的运行记录。

现在的配置大多是 YAML,而大多数 API 仍然讲 JSON,于是两者之间的转换成了日常琐事。这里两个方向都能跑,用的是 Node 生态同一套 YAML 实现,所以锚点、多行标量和显式类型能完整走完全程,而不是被压成字符串。

它是怎么工作的

  • 转换在你的浏览器里进行,基于 eemeli/yaml——JavaScript 里 YAML 1.2 的参考实现。
  • 转成 JSON 时 YAML 注释会丢失,因为 JSON 没有地方放它们。
  • 缩进设置作用于你正在生成的那一侧。

你的数据去了哪里

哪也没去。本工具完全在你的浏览器里运行:你粘贴的文本由页面处理,不会传输到任何服务器,也不会写进任何日志。

当一次运行消耗积分时,会向你自己的历史里保存一行摘要,方便回头查找。摘要记录的是这次运行的形态——大小、数量、你查询的值——而不是你粘贴的内容。

它要花多少

单次 50.0 KB 以内免费,无需账号。超出部分每次运行消耗 1 积分,并保存到你的历史记录。

积分来自注册、每日签到、发表评论和完善资料。

了解积分规则

常见问题

我的 YAML 注释能来回转换而不丢吗?
不能,任何转换器都做不到。JSON 没有注释语法,所以文档变成 JSON 的那一刻注释就无处安放,回来的路上也没有东西可供恢复。
我的版本号为什么变成了字符串?
YAML 会把不加引号的 1.10 读成数字 1.1,末尾的零悄悄丢了;而不加引号的 1.2.3 又会被当成字符串,因为它根本不是数字。这种不一致才是真正的陷阱。在 YAML 里给版本号加上引号,每次都会精确转换。
支持多文档 YAML 吗?
只转换第一个文档。用 --- 分隔成多份的文件没有单一的 JSON 对应物,所以怎么拆由你决定。

背后的开源项目

本工具运行在 eemeli/yaml 之上,以 ISC 许可发布。如果你需要在自己的程序里实现同样的能力,直接用这个库。

eemeli/yaml

也常被称作

  • json转yaml
  • yaml转json
  • yaml在线转换
  • yaml格式化
  • 配置文件转换