TOML 解析器

解析 TOML 配置文件并转换为 JSON。所有处理在浏览器中完成。

即时解析 完整TOML支持 客户端处理
解析后的JSON将在此显示...

如何使用 TOML 解析器

1

输入 TOML

在输入框中粘贴 TOML 配置内容。

2

转换

点击转换按钮,将 TOML 解析为 JSON。

3

复制结果

查看并复制格式化的 JSON 结果。

什么是 TOML?

TOML(Tom's Obvious Minimal Language)是一种专为配置文件设计的最小化格式。语法简单直观,支持键值对、表、数组和多种数据类型,被 Rust(Cargo)、Go(Go Modules)等项目广泛使用。

TOML特性

键值对

简单 key = value 语法用于基本类型

表(节)

使用 [section] 头组织配置

数组与内联表

支持数组、嵌套表和内联表语法

常见问题

TOML 和 YAML 有什么区别?

TOML 语法更严格、更易解析,适合配置文件;YAML 更灵活、支持更多特性,但解析更复杂。

支持哪些 TOML 版本?

支持 TOML v1.0 规范的大部分特性。

TOML 支持注释吗?

支持,使用 # 号表示注释。

TOML 的表和表数组是如何工作的?

[server] 开启一个表;[server.tls] 在其中嵌套一个子表;[[products]] 则开始一个表数组,每个重复出现的 [[products]] 头部都会追加一个新元素——这是配置文件中记录列表的惯用写法。缩进只是装饰性的,方括号头部才真正定义结构。

TOML 如何处理日期和时间?

TOML 1.0 有四种时间类型:带偏移量的日期时间(1979-05-27T07:32:00Z,RFC 3339 格式)、不带偏移量的本地日期时间、本地日期(1979-05-27)和本地时间(07:32:00)。时间戳是一等值——无需加引号,无需字符串解析——这消除了一整类由字符串日期在 JSON 或 YAML 中引发的配置错误。

配置文件为什么选择 TOML 而不是 INI 或 JSON?

对比 INI:TOML 拥有正式的规范、带类型的值(整数、浮点数、布尔值、日期、数组),以及清晰的嵌套结构,而不是点号键的约定。对比 JSON:TOML 支持注释和多行字符串,也没有尾随逗号的陷阱。JSON 仍然更适合程序之间的数据交换;TOML 则专为人手编写的配置而生。

哪些生态系统在使用 TOML?

Rust 的 Cargo(Cargo.toml)使其广为人知;Python 将其标准化用于构建配置(pyproject.toml,PEP 518);它还出现在 Hugo、Netlify 以及众多 CI 系统中。该格式由 toml-lang 组织维护,并配有符合性测试套件——这也是各语言解析器行为一致的原因之一。

TOML 中的多行字符串和字面量字符串是如何工作的?

三个双引号可跨行书写并包含真实换行,还支持行尾反斜杠来去除空白;三个单引号功能相同,但完全不做任何转义处理。单引号字面量字符串同样完全跳过转义——非常适合 Windows 路径(C:\Users\name)和正则表达式,否则这些内容中的每个反斜杠都需要加倍书写。

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}