TOML是前GitHub CEO, Tom Preston-Werner,于2013年创建的语言,其目标是成为一个小规模的易于使用的语义化配置文件格式。TOML被设计为可以无二义性的转换为一个哈希表(Hash table)。TOML是大小写敏感的,必须是UTF-8编码。

# Toml 示例
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/BurntSushi/toml

import ("github.com/BurntSushi/toml"
)type config struct {Server serverMysql  mysql
}var Server *servertype server struct {Address stringPort    string
}var Mysql *mysqltype mysql struct {Database stringHost     stringPassword stringPort     stringUsername string
}func init() {var config configif _, err := toml.DecodeFile("config\\app.toml", &config); err != nil {fmt.Println(err)return}Server = &config.ServerMysql = &config.Mysql
}

python包

pip install toml
import tomlfile_a = "res/a.toml"
file_b = "res/b.toml"if __name__ == "__main__":a = toml.load([file_a, file_b])print("后读文件b的结果:%s" % a)a = toml.load([file_b, file_a])print("后读文件a的结果:%s" % a)

Toml的简单说明、配置、使用相关推荐

  1. WebLogic启动与简单项目配置

    http://tlinle.blog.51cto.com/251944/839666 一WebLogic简介 webserver是用来构建网站的必要软件.可用来解析.发布网页等功能,它是用纯java开 ...

  2. SpringCloud 微服务网关Gateway介绍及简单路由配置

    概述:什么是微服务网关?为了解决用户客户端在调用微服务系统中的多个消费者工程接口时,需要维护非常多的消费者应用接口地址等信息,以及可能存在不同应用见的调用跨域等问题,微服务网关组件随即出现.网关作为用 ...

  3. cisco路由器 三层交换机简单环境配置实例(图)

    出处:http://www.jb51.NET/softjc/56600.html cisco路由器&三层交换机简单环境配置实例 一.网络拓扑图: 二.配置命令: 1.路由器的配置: inter ...

  4. 在写CSDN的文章时,如何插入表格并进行简单的配置

    在写CSDN的文章时,如何插入表格并进行简单的配置 (如果这篇文章对你有所帮助,请为我点个赞,要问我点赞有什么作用,嘿嘿,只是为了我的心情愉悦(* ̄︶ ̄))   最近在CSDN上写一些文章,有的时候需 ...

  5. Linux操作系统下的一些简单网络配置命令

    Linux操作系统下的一些简单网络配置命令 转载请注明出自雨林木风 bbs.ylmf.com,本贴地址:http://bbs.ylmf.com/read.php?tid=399679&u= 使 ...

  6. LNMP一键安装包 – 简单单单配置好linux服务器

    LNMP一键安装包 – 简单单单配置好linux服务器 lnmp-org 网站.独立博客越做越大,腰包越来越鼓,不少做网站的朋友明显感受到了虚拟主机已经不足以满足自己网站的负载,加之服务器硬件以及带宽 ...

  7. 超简单的配置java环境变量(绝对路径)

    超简单的配置java环境变量(绝对路径) 之前一开始学习java的时候糊里糊涂配好了环境变量,也是费了好大的牛劲,配了卸卸了重新配.前几天学妹让我给她看看环境变量,瞬间觉得环境变量真的很好懂,只要你搞 ...

  8. toml的简单说明与配置

    TOML是前GitHub CEO, Tom Preston-Werner,于2013年创建的语言,其目标是成为一个小规模的易于使用的语义化配置文件格式.TOML被设计为可以无二义性的转换为一个哈希表( ...

  9. 简单图文配置golang+vscode【win10/centos7+golang helloworld+解决install failed等情况】

    博客目录(阅读时间:10分钟) 一.win10 0.系统环境 1. win10配置golang环境 ①下载相关软件 ②创建gowork工作空间 ③配置环境变量(GOPATH+PATH) ④验证环境配置 ...

最新文章

  1. oracle驱动程序包的安装失败,Maven 、oracle的jdbc的jar包下载失败
  2. MES/MOM的未来:低代码与模型驱动
  3. debain unable to find the kernel_云改的核心技术:主机虚拟化(TO 政企人员)
  4. 052_Function对象
  5. 2019第十届蓝桥杯C/C++ A组省赛 —— 第一题:平方和
  6. 运用Nginx代理和UWSGI将Flask项目部署在Linux中 详细步骤
  7. word2016 图片去底灰_打印图片怎样去灰色底
  8. 屏保:毛雷尔玫瑰屏保
  9. 编写程序描述影视歌三栖艺人 需求说明:请使用面向对象的思想,设计自定义类,描述影视歌三梄艺人。 实现思路及关键代码 1)分析影视歌三栖艺人的特性 a)可以演电影 b)可以演电视剧 c)可以唱歌
  10. 猿辅导python面试_猿辅导西安少儿编程班主任面试:为什么选择猿辅导 猿辅导是一个 - 职朋职业圈...
  11. 〖Python接口自动化测试实战篇②〗- 摒弃 ‘捉虫师’ 称号 - 你需要重新认识软件测试
  12. mysql配置kodi16.1_kodi中文包|kodi 16.1中文语言包下载 附插件使用教程 - 121下载站...
  13. CSS(基础,面试,常见用例)
  14. 重磅!道翰天琼解密认知智能核心秘密三大核心技术,机器人大脑API平台。
  15. 从马文到AlphaGo AI走过了怎样的70年?
  16. Broken Necklace(USACO官方)
  17. PCA主成分分析教程(origin分析绘制,无须R语言)
  18. 面试遇见简单算法总结
  19. 费城老鹰队门票老鹰登陆了六号种子为NFC淘汰赛
  20. Netstat查看端口状态,netstat命令详解

热门文章

  1. Mac进入home目录、根目录的方法
  2. Ftp操作报错:TODO: INTERNET_ERROR_* need message mappings 12014
  3. 「手机秒变照片传送门!使用 Flask 打造你的个人云相册!」
  4. 5814. 【NOIP提高A组模拟2018.8.14】 树(期望 + 倍增)
  5. 什么异常,在程序中为什么抛异常?抛异常的几中方式
  6. 基于postgresl的gaussDB(DWS)地址省市区解析函数
  7. 不死UBOOT下载链接
  8. Literal控件的用法
  9. 蜂巢(蓝桥杯python)
  10. 51Nod 欢乐手速场1 A Pinball[DP 线段树]