JSON 转 YAML 转换器
将 JSON 转换为易读的 YAML,支持 2 或 4 个空格缩进、可选的键排序、多行字符串的字面块以及多文档输出。免费。
完全在浏览器中运行,您的数据不会被上传。
相关工具
查看全部什么是 JSON 转 YAML?
将 JSON 转换为便于人阅读的 YAML。YAML 会误读的字符串(如 yes、123 或 null)会被自动加引号,多行字符串使用 | 字面块,顶层数组可以写成每项一个 YAML 文档。
如何使用 JSON 转 YAML
- 将 JSON 粘贴到 JSON 输入框中,或使用加载示例或打开文件。
- 选择缩进(2 或 4 个空格)、按键排序以及顶层数组 → 每项一个 YAML 文档。
- YAML 输出会随你的输入实时更新;可使用复制或下载。
示例
输入
{"name":"Ada","langs":["en","fr"],"active":true} 输出
name: Ada langs: - en - fr active: true
何时使用 JSON 转 YAML
适合根据 JSON 数据编写 Kubernetes、Ansible、GitHub Actions 或 Docker Compose 的配置。除非你要求排序,否则键的顺序会保留;无法生成 YAML 注释,因为 JSON 里没有注释。
JSON 转 YAML 的工作原理
JSON 被解析后由 js-yaml 输出。行永远不会被折叠,引用会被内联,并且输出器会给任何否则会被读回成其他类型的字符串加上引号。在多文档输出中,顶层数组的每个元素都写在各自的 --- 分隔符之后。
常见用例
- 把 JSON API 响应转换为易读的 YAML 片段
- 根据脚本生成的 JSON 创建 Kubernetes 清单
- 根据 JSON 模板编写 CI 配置
- 从资源数组生成多文档 YAML
常见问题
为什么有些字符串被加了引号?
“yes”“123”或“null”这样的值会被读回成布尔值、数字或 null,因此会加引号以保持为字符串。
可以让每个数组项生成一个文档吗?
可以,启用多文档选项后,每一项都会写在一行 --- 之后。
输出对 Kubernetes 有效吗?
这是标准的 YAML;只要 JSON 结构本身是有效的清单,Kubernetes 就能接受。
推荐的下一步
JSON 格式化
在线格式化并美化 JSON,支持 2 空格、4 空格或制表符缩进,可按字母排序键,语法错误会精确提示行号和列号。完全在浏览器中运行。
转义/反转义工具
一个工具搞定字符串转义与反转义:支持 JSON、JavaScript、HTML、XML、URL 组件、正则表达式、SQL 字面量、CSS 字符串和 Shell 参数。
JSON 压缩
移除 JSON 中所有无意义的空白,同时保持值、键顺序和大数字不变,并显示节省的体积。免费且在浏览器内运行。
JSON 路径查找
以 JSONPath、JavaScript 或 jq 语法列出 JSON 文档中的每个路径,点击路径即可查看其值,也可输入路径直接查询。在浏览器中运行。
JSON 对比
按结构比较两个 JSON 文档:以 JSONPath 显示新增、删除和修改的值,忽略键顺序和排版。免费,在浏览器中运行。
JSON 查询(JSONPath)
用 JSONPath 查询 JSON:支持通配符、递归下降、切片以及 [?(@.price < 10)] 这样的过滤表达式,结果随输入实时更新。不是 jq 语法。