开发者工具 / 06
JSON 转 YAML 转换器
将JSON转换为易读的YAML,用于配置文件和清单文件。
JSON 转 YAML 转换器: TOEA会将文档写入为YAML,使用两个空格缩进;对可能被误读的值加引号,并让长字符串保持在同一行。 完全在浏览器中本地运行,文件不会上传到服务器。
- 类别
- 开发者工具
- 使用次数
- 在浏览器中
- 费用
- 免费·无需注册
- 可用性
- 可直接使用
完全在浏览器中运行
最大5 MB·不会上传
其他程序读取YAML时
只要YAML 1.1或1.2读取器可能将某个字符串理解为其他类型,就会为其添加引号。这包括任意大小写的yes、no、on和off,单个字母y和n,null和~,带前导零的数字(如0123),十六进制和八进制形式,以及2024-01-05或12:30等日期和时间。许多Python工具和Ansible使用的PyYAML会将on读取为true,将0123读取为八进制数83;加引号可以避免这种情况。JSON中的数字、布尔值和null不会加引号,因此其类型能够保留。
为人类整理输出
除非键是整数,键会保留其在JSON中的顺序。因此在转换前,请将读取者需要查找的字段(如name、image或version)放在每个对象的顶部。转换后可以使用#添加注释;注释在编辑时会保留,但再次转换为JSON时不会保留。全程使用两个空格缩进,YAML文件绝不能使用制表符缩进,因此修改结果时请在编辑器中保留这一设置。
许多读取YAML的工具也直接接受JSON,因为JSON是有效的YAML 1.2。转换的目的是提高可读性并支持注释,而不是兼容性。
使用方法
- 粘贴JSON或选择文件。
- 检查YAML。
- 复制或下载结果。
隐私与限制
文本会在你的浏览器中转换,绝不会上传;当文件是配置文件或你不想交给陌生人的导出数据时,这一点很重要。需要时会为值加引号,确保输出重新解析后与输入内容完全一致。
相关工具
常见问题
为什么有些值会加引号?
包含冒号的字符串,或会被YAML 1.1或1.2读取器识别为数字、布尔值、null或日期的字符串(yes、off、0123、2024-01-05),都会加上引号,以便重新读取时仍作为相同的字符串处理。
为什么长网址不会换行?
折行在YAML中是有效的,但在需要手动编辑的文件中容易令人困惑,因此工具会关闭折行,让长值保持在同一行。
可以保持往返转换后不变吗?
可以。通过YAML转JSON工具转换回来后,会得到原始文档;测试检查的就是这一点。
可以在输出中加入注释吗?
不可以。源JSON不包含注释,因此结果中不会有注释。
免费工具·使用在浏览器中次·无需账户