YAML
16 行
TOML
14 行
关于 YAML 转 TOML
YAML 转 TOML 工具在浏览器本地将 YAML 数据解析并输出符合 TOML 1.0 规范的配置文件。正确处理 YAML 的嵌套映射转换为 TOML 的表结构(方括号语法 table.subtable)、序列转换为表数组(双方括号语法 [[array]]),以及字符串、整数、浮点数、布尔值、ISO 8601 日期时间和多行字符串的类型映射。有两个差异要特别留意:一是 YAML 用缩进表达层级,TOML 用方括号表头,转换后结构相同但写法更扁平;二是 YAML 的 null 在 TOML 里没有对应概念,值为 null 的键会被跳过,null 字段会从结果中消失。适用于将 CI/CD 配置迁移到 pyproject.toml、将 Docker Compose 参数整理进 Cargo.toml 和在不同工具链之间转换配置格式。例如把 server: host: localhost 的 YAML 转回 [server] 表的 TOML,便于交给 Cargo 或 pyproject 类工具。
使用方法
- 打开「YAML 转 TOML」
- 选择源格式与目标格式
- 根据需要调整输出选项
- 点击「转换」按钮,结果实时显示
- 复制或导出结果
使用场景
- 整理工具配置 — 把分散的 YAML 配置项收敛进 Rust/Python 项目的单一 TOML 文件。
- 格式标准化 — 团队规定用 TOML 后,将历史 YAML 配置统一转换。
- 语法学习 — 对照 YAML 与 TOML,理解表数组等 TOML 特有结构。
- 配置精简 — 把层级过深的 YAML 重新组织成 TOML 的扁平表结构。
- 生成示例 — 在文档里同时提供 YAML 与 TOML 版本供读者参考。
- 迁移 CI 变量 — 把 GitHub Actions 工作流的输入转成 TOML,集中到 pyproject.toml 维护。
常见问题
YAML 的 null 会怎样?
TOML 没有 null。值为 null 的键在转换时会被跳过,请留意这些字段会从结果中消失。
YAML 锚点会被保留吗?
不会。锚点和引用会先展开成实际内容再转 TOML,因为 TOML 不支持引用机制。
对象数组转成什么?
转成 TOML 的表数组 [[name]],每个数组元素对应一个表块。
为什么有些键被加了引号?
当键名含点号、空格等特殊字符时,TOML 要求用引号包裹,本工具会自动处理。
YAML 的多行字符串怎么处理?
长文本会转成 TOML 的三引号多行字符串,保留原有换行结构;需要折叠的行则用行尾反斜杠处理。
想用 JSON 做中转?
可先用「YAML 转 JSON」再用「JSON 转 TOML」,分两步更可控。
广告