JSON 转 YAML 转换器
即时将 JSON 转换为 YAML
JSON 输入
选项
YAML 输出
概述
JSON 转 YAML 转换器可将 JSON——API 响应、包配置、导出的设置——转换为简洁的、基于缩进的 YAML,适用于 Kubernetes 清单、Docker Compose 文件、CI/CD 流水线以及其他基于配置的工具。该转换器会自动为存在歧义的标量值加上引号,并按你选择的缩进宽度生成易读的块状风格输出。
此转换器可检测和处理的内容
- •默认输出块状风格 YAML:嵌套对象和数组会渲染为缩进式 YAML,而非内联流式语法
- •自动标量加引号:看起来像布尔值('yes'、'no'、'on'、'off')、数字或日期的字符串会被加上引号,以确保它们在转换后仍作为字符串保留,而不是变成 YAML 关键字
- •可配置的缩进:2 空格或 4 空格输出,匹配你团队的 YAML 风格
- •实时格式检测:在你输入时识别 JSON 与 YAML,并建议匹配的转换方向
- •嵌套对象与数组支持:任意深度的 JSON 结构都能转换为正确缩进的 YAML
- •完全在浏览器中运行:你的 JSON 数据永远不会上传到服务器
何时需要将 JSON 转换为 YAML
- •将 JSON API 响应转换为 Kubernetes 清单或 Helm values 文件
- •将导出的 JSON 配置转换为用于本地开发的 Docker Compose 文件
- •从脚本生成的 JSON 定义出发,编写 GitHub Actions 或 GitLab CI 流水线
- •将应用程序的 config.json 迁移为期望使用 YAML 的工具所需的 config.yaml
- •从 JSON 数据生成便于人工编辑的 YAML,用于文档或代码审查
如何将 JSON 转换为 YAML
- 1.将 JSON 对象或数组粘贴到输入编辑器,或上传 .json 文件
- 2.让自动检测确认转换方向,或手动选择"JSON 转 YAML"
- 3.选择 2 空格或 4 空格缩进,以匹配目标文件的风格
- 4.点击"转换"以执行转换
- 5.复制 YAML 输出或下载为 .yaml 文件
需要了解的边界情况
- •看起来像数字(例如 "00123")或布尔值(例如 "true")的 JSON 字符串,在 YAML 输出中会被加上引号以保留其原始字符串类型——这是预期行为,而非错误
- •空对象({})和空数组([])会渲染为内联流式表示法('{}' / '[]'),因为块状风格无法表示空容器
- •非 ASCII 字符和表情符号会按原样保留,但可能会根据周围的标点符号被加上引号
- •嵌套非常深的 JSON 会生成缩进同样很深的 YAML,超过 5-6 层后可能变得难以阅读
限制
- •YAML 的锚点(anchor)和别名(alias)永远不会在输出中被重建,即使同一个对象在源 JSON 中出现多次,因为 JSON 没有可供检测的引用语义
- •JSON 文本本身就无法表示循环引用、函数、undefined 或 symbol——粘贴任何不是有效 JSON 语法的内容(包括这些)都会让 JSON.parse 在 YAML 转换步骤开始运行之前就抛出语法错误
- •转换过程中无法添加注释——YAML 注释需要在转换后手动添加
需要反向转换吗?
如果你从 YAML 文件出发——Kubernetes 清单、Docker Compose 文件或 CI 流水线定义——需要用于 API、JSON Schema 验证器或 JavaScript 代码的 JSON,请改用 YAML 转 JSON 转换器。它会自动解析锚点和别名,并能检测块状与流式两种风格的 YAML。