JSON转YAML
在线JSON转YAML工具,将JSON数据一键转换为YAML格式。支持对象、数组、嵌套结构,保留中文与原始类型,可缩进序列、按字母排序键,适用于配置文件生成、Kubernetes 清单、CI/CD Pipeline 编写。
原始大小
0 字符
YAML 大小
0 字符
节点数量
0 个
转换状态
等待转换
JSON 输入
等待输入
YAML 结果
—
功能特性
精准转换
基于 YamlDotNet 引擎,将 JSON 对象、数组、嵌套结构完整转换为 YAML,类型推断准确,结果符合 YAML 1.1 规范。
缩进序列
支持开启序列项缩进,数组元素与父级键对齐缩进,层级关系更清晰,便于阅读和维护复杂配置。
键名排序
可选按字母顺序排序对象键,生成结构统一、便于比对的 YAML 文档,适合配置规范化与版本对比场景。
中文保留
字符串值原样输出,中文等非 ASCII 字符不转义,多语言内容直接可读,避免 Unicode 转义码污染文档。
嵌套支持
自动递归处理任意深度的对象与数组嵌套,统计节点数量与最大深度,转换前后结构信息一目了然。
安全可靠
JSON 解析与转换在后端完成,不存储您的数据,请求完成即释放,保障数据隐私安全。
使用说明
如何使用 JSON 转 YAML 工具?
- 在左侧输入框中粘贴或输入需要转换的 JSON 数据。
- (可选)勾选「缩进序列」让数组元素缩进显示,结构更清晰(默认开启)。
- (可选)勾选「排序键」按字母顺序排序对象的键。
- 点击「转换为YAML」按钮,右侧将显示转换后的 YAML 文档。
- 上方统计卡片显示原始大小、YAML 大小、节点数量和转换状态。
- 点击「复制结果」可将 YAML 复制到剪贴板,或点击「下载」保存为
.yaml文件。 - 点击「示例」按钮加载演示数据,点击「清空」清除输入和结果。
转换规则
- 对象:JSON 对象转换为 YAML 映射,键值以
key: value形式表示,嵌套对象通过缩进体现层级。 - 数组:JSON 数组转换为 YAML 序列,元素以
-开头;开启「缩进序列」时元素相对父级键额外缩进。 - 字符串:普通字符串直接输出,含特殊字符时自动加引号;中文原样输出不转义。
- 数字:整数与浮点数保留原始字面量,如
8080、3.14。 - 布尔/null:
true、false、null转换为 YAML 对应字面量。 - 空值处理:空对象输出为
{},空数组输出为[]。
使用场景
- 配置文件:将 JSON 配置转为 YAML,享受更简洁的语法和注释支持。
- Kubernetes:从 JSON 生成 K8s 清单文件,便于集群资源定义。
- CI/CD:生成 GitHub Actions、GitLab CI、Docker Compose 等 Pipeline 配置。
- 数据迁移:在 JSON 与 YAML 体系间迁移配置数据,保留结构与类型。
常见问题
JSON 转 YAML 工具是免费的吗?
是的,本工具完全免费,无需注册登录。JSON 数据发送到后端进行解析与转换,处理完成后不在服务器存储,保障数据隐私安全。
「缩进序列」选项有什么作用?
YAML 序列(数组)的元素默认与父级映射键处于同一缩进层级。开启「缩进序列」后,序列元素会相对父级键额外缩进,使层级关系更清晰、更符合部分团队的代码风格。两种写法都是合法的 YAML,转换结果可被任意 YAML 解析器正确读取。
转换后的 YAML 会被哪些场景使用?
转换后的 YAML 可直接用于 Kubernetes 清单、Docker Compose、GitHub Actions / GitLab CI 配置、Ansible Playbook、Spring Boot 配置文件、Helm Chart 等所有支持 YAML 的场景,生成结果符合 YAML 1.1 规范。
中文字符会被转义吗?
不会。字符串值原样输出,中文等非 ASCII 字符不转义为 Unicode 转义码,直接以可读的中文字符呈现,便于阅读和维护。仅当字符串包含 YAML 特殊字符(如冒号、引号、井号等)时,才会自动加引号以保证解析正确。
「排序键」选项有什么作用?
默认情况下,对象键按 JSON 中的原始顺序输出。开启「排序键」后,对象的键会按字母顺序(区分大小写)排序,生成结构统一、便于版本对比和差异比对的 YAML 文档,适合需要规范化配置的团队协作场景。
JSON 和 YAML 有什么区别?
JSON 是基于键值对和数组的数据格式,使用花括号和方括号表示结构,不支持注释;YAML 是基于缩进的配置格式,使用空格缩进表示层级,语法更简洁,支持注释、多行字符串、引用等特性。YAML 更适合人工编写和维护配置文件,JSON 更适合程序间数据交换。本工具帮助您在两者之间快速转换。