一. 前言
TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics. TOML is designed to map unambiguously to a hash table. TOML should be easy to parse into data structures in a wide variety of languages.
在了解这个文件格式前, 需要了解以下配置文件的常见格式.
- json, json格式可以说是互联网中最重要的数据交换载体, 简洁明了, 轻量, 但是唯一遗憾的是不支持注释.
- ini, 作为一种非常简单易用的格式, 但是不支持复杂的配置, 不支持数字(仅限于字符串), 支持注释,
windows
上相对流行. - xml, 一个逐步退出历史舞台的文件格式, 过于臃肿.
- yaml, 支持复杂的配置(号称
json
的扩展版), 但是可阅读性较差?书写规条较多?.
简而言之, 作为一个好用的配置文件, 既需要数据易于存储/读取(同时需要有效数据密度高), 同时也需要有较好的阅读体验. 以json为例, 假如不进行格式化, 将难以阅读其内容.
而Toml
就号称满足上述要求:
TOML 旨在成为一个语义明显且易于阅读的最小化配置文件格式.TOML 被设计成可以无歧义地映射为哈希表.TOML 应该能很容易地被解析成各种语言中的数据结构.
目前主流的语言多已支持这种文件格式, 详情见v1.0.0 compliant