2018年第一季度,区块链相关人才的招聘需求已达到2017年同期的9.7倍,发布区块链相关岗位的公司数量同比增长4.6倍。
兄弟连教育Go全栈与区块链培训课程是由清华、微软和谷歌名师历时半年时间研发出的独一无二的体系化课程。
golang读取ini配置文件
一、安装config配置解释包:
go get github.com/larspensjo/config
二、载入其包及代码设置
package main
import (
"flag"
"fmt"
"github.com/larspensjo/config"
"log"
"runtime"
)
var (
configFile = flag.String("configfile", "config.ini", "General configuration file")
)
//topic list
var TOPIC = make(map[string]string)
func main() {
runtime.GOMAXPROCS(runtime.NumCPU())
flag.Parse()
//set config file std
cfg, err := config.ReadDefault(*configFile)
if err != nil {
log.Fatalf("Fail to find", *configFile, err)
}
//set config file std End
//Initialized topic from the configuration
if cfg.HasSection("topicArr") {
section, err := cfg.SectionOptions("topicArr")
if err == nil {
for _, v := range section {
options, err := cfg.String("topicArr", v)
if err == nil {
TOPIC[v] = options
}
}
}
}
//Initialized topic from the configuration END
fmt.Println(TOPIC)
fmt.Println(TOPIC["debug"])
}
三、配置文件
文件名:config.ini
[topicArr]
addr = 192.168.1.100
debug = true
login = LoginRequest
[other]
t1 = 0000337
t2 = admin
四、简介:
4.1首先通过config.ReadDefault(*configFile)打开配置文件
4.2 然后判断配置文件中一级标签名是否存在if cfg.HasSection("topicArr") {}
4.2读取一级标签中的所有子标签cfg.SectionOptions()
4.3循环一下子标签,将子标签中的值记录在一个map中(TOPIC为全局变量),以备后面使用
for _, v := range section {
options, err := cfg.String("topicArr", v)
if err == nil {
TOPIC[v] = options
}
}
有疑问加站长微信联系(非本文作者)