JSON ↔ YAML ↔ XML
JSON、YAML、XML 三种数据格式在线互转,自动识别输入、缩进可调、压缩/美化切换、错误行列定位,纯前端不上传。
纯前端处理,数据不上传
输出
工具介绍
JSON、YAML、XML 是三种最常见的数据与配置格式,各有适用场景:JSON 简洁、是接口和前后端交互的主流;YAML 缩进清晰、对人友好,被 Docker Compose、Kubernetes、各类 CI 配置广泛采用;XML 结构严谨,在不少传统系统、文档规范和企业接口中仍在使用。开发中经常需要在它们之间转换——把接口返回的 JSON 转成 YAML 写进配置、把别人的 YAML 转成 JSON 喂给程序、或在对接老系统时与 XML 互转。
本工具支持这三种格式的任意互转:把数据粘贴进来,选择源格式(也可让工具自动识别)和目标格式,默认开启「自动转换」,修改输入或选项即时出结果。输出可调缩进(2 空格、4 空格或 Tab),也可一键「压缩输出」得到最小化的单行结果,在压缩与美化之间自由切换。遇到语法问题时,工具会在输入框下方提示错误并尽量定位到具体的行与列,还可点「校验源数据」单独检查源数据是否合法。底层使用成熟的 js-yaml 和 fast-xml-parser 解析与生成,常见结构都能稳定转换。
需要注意的是,XML 的数据模型与 JSON/YAML 不完全对应,属性会以特定键名(@_ 前缀)表示,命名空间、混合内容等复杂结构可能无法完美还原,简单清晰的结构转换效果最好。所有解析与转换都在浏览器本地完成,数据不会上传到任何服务器,处理含密钥、密码的配置文件也放心。
使用方法
- 把数据粘贴到输入框(支持 JSON / YAML / XML)。
- 选择源格式(或用「自动识别」)与目标格式,默认开启「自动转换」,改动即时出结果。
- 用「缩进」选择 2/4 空格或 Tab,勾选「压缩输出」可得到最小化单行结果。
- 点「校验源数据」单独检查语法,出错时在输入框下方提示具体行列位置。
- 点「结果转输入」可把输出回填继续链式转换,结果一键复制。
常见问题
- 为什么要在这些格式间转换?
- JSON 适合程序与接口,YAML 适合人读的配置(Docker、K8s、CI),XML 常见于老系统与某些规范。在它们之间互转,便于复用配置、调试接口和迁移数据。
- 可以调整缩进和压缩吗?
- 可以。输出缩进支持 2 空格、4 空格或 Tab;勾选「压缩输出」后,JSON 会去掉所有空白成单行,XML 不再换行缩进,YAML 采用紧凑的流式写法,适合塞进环境变量或单行字段。
- 转换报错怎么办?
- 多为源数据语法错误(JSON 少引号/逗号、YAML 缩进不当、XML 标签未闭合)。本工具会在输入框下方红字提示,并尽量给出「第几行第几列」的定位;也可点「校验源数据」单独检查。修正后重新转换即可。
- XML 转换有什么注意点?
- XML 与 JSON/YAML 的结构模型不完全对应:属性会以 @_ 前缀的键名表示,混合内容、命名空间等复杂结构可能无法完美还原,简单清晰的结构转换效果最佳。
- 数据会上传吗?
- 不会。解析与转换均在浏览器本地完成(基于 js-yaml 与 fast-xml-parser),数据不会上传到任何服务器,处理含密钥的配置也安全。