toml的簡單說明與配置

TOML是前GitHub CEO, Tom Preston-Werner,于2013年創建的語言,其目標是成為一個小規模的易于使用的語義化配置文件格式。TOML被設計為可以無二義性的轉換為一個哈希表(Hash table)。TOML是大小寫敏感的,必須是UTF-8編碼。

title = "TOML Example"

[owner]
name = "Lance Uppercut"
dob = 1979-05-27T07:32:00-08:00 # 日期是一等公民

[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true

[servers]
  #你可以使用空格、制表符進行縮進,或者根本不縮進。TOML不關心縮進。
  [servers.alpha]
  ip = "10.0.0.1"
  dc = "eqdc10"

  [servers.beta]
  ip = "10.0.0.2"
  dc = "eqdc10"

[clients]
data = [ ["gamma", "delta"], [1, 2] ]

# 數組內可以混入換行符
hosts = [
  "alpha",
  "omega"
]

注釋

使用#來表示注釋開始,至當前行尾結束。
# I am a comment. Hear me roar. Roar.

字符串

TOML中有4種字符串表示方法:基本、多行-基本、字面量、多行-字面量

基本字符串

由雙引號包裹,所有Unicode字符均可出現,除了雙引號、反斜線、控制字符(U+0000 to U+001F)需要轉義。
str = "I'm a string. \"You can quote me\"."

多行-基本字符串

由三個雙引號包裹,除了分隔符開始的換行外,字符串內的換行將被保留

str1 = """
Roses are red
Violets are blue"""

字面量字符串

由單引號包裹,其內不允許轉義,因此可以方便的表示基本字符串中需要轉義的內容
winpath = 'C:\Users\nodejs\templates'

多行-字面量字符串

與多行-基本字符串相似

str1 = '''
Roses are red
Violets are blue'''

數值與BOOL值

int1 = +99
flt3 = -0.01
bool1 = true

日期時間

date1 = 1979-05-27T07:32:00Z

數組

數組使用方括號包裹。空格會被忽略,包括換行符。元素使用逗號分隔。

arr1 = [ 1, 2, 3 ]
arr2 = [ "red", "yellow", "green" ]
arr3 = [ [ 1, 2 ], [3, 4, 5] ]

表格

表格葉稱為哈希表或字典,用來存儲鍵值對。表格名由方括號包裹,且自成一行。

[dog]
onekey = onevalue

[dog.tater]
type = "pug"

go包

可以利用github.com/bbangert/toml包對toml文件進行解析

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容