TOML 解析器
解析 TOML 配置文件并转换为 JSON。所有处理在浏览器中完成。
解析后的JSON将在此显示...
如何使用 TOML 解析器
输入 TOML
在输入框中粘贴 TOML 配置内容。
转换
点击转换按钮,将 TOML 解析为 JSON。
复制结果
查看并复制格式化的 JSON 结果。
什么是 TOML?
TOML(Tom's Obvious Minimal Language)是一种专为配置文件设计的最小化格式。语法简单直观,支持键值对、表、数组和多种数据类型,被 Rust(Cargo)、Go(Go Modules)等项目广泛使用。
TOML特性
键值对
简单 key = value 语法用于基本类型
表(节)
使用 [section] 头组织配置
数组与内联表
支持数组、嵌套表和内联表语法
常见问题
TOML 语法更严格、更易解析,适合配置文件;YAML 更灵活、支持更多特性,但解析更复杂。
支持 TOML v1.0 规范的大部分特性。
支持,使用 # 号表示注释。
[server] 开启一个表;[server.tls] 在其中嵌套一个子表;[[products]] 则开始一个表数组,每个重复出现的 [[products]] 头部都会追加一个新元素——这是配置文件中记录列表的惯用写法。缩进只是装饰性的,方括号头部才真正定义结构。
TOML 1.0 有四种时间类型:带偏移量的日期时间(1979-05-27T07:32:00Z,RFC 3339 格式)、不带偏移量的本地日期时间、本地日期(1979-05-27)和本地时间(07:32:00)。时间戳是一等值——无需加引号,无需字符串解析——这消除了一整类由字符串日期在 JSON 或 YAML 中引发的配置错误。
对比 INI:TOML 拥有正式的规范、带类型的值(整数、浮点数、布尔值、日期、数组),以及清晰的嵌套结构,而不是点号键的约定。对比 JSON:TOML 支持注释和多行字符串,也没有尾随逗号的陷阱。JSON 仍然更适合程序之间的数据交换;TOML 则专为人手编写的配置而生。
Rust 的 Cargo(Cargo.toml)使其广为人知;Python 将其标准化用于构建配置(pyproject.toml,PEP 518);它还出现在 Hugo、Netlify 以及众多 CI 系统中。该格式由 toml-lang 组织维护,并配有符合性测试套件——这也是各语言解析器行为一致的原因之一。
三个双引号可跨行书写并包含真实换行,还支持行尾反斜杠来去除空白;三个单引号功能相同,但完全不做任何转义处理。单引号字面量字符串同样完全跳过转义——非常适合 Windows 路径(C:\Users\name)和正则表达式,否则这些内容中的每个反斜杠都需要加倍书写。
相关工具
权威参考资料
本工具所依据的一手资料 - 官方标准与规范,而非二手摘要。