讀取配置檔案的,有toml和vipper兩種好用的方法,toml的方法見:
最大的特點就是要為配置檔案構建相對應的結構體,有點囧,現在講乙個vipper。
// init 初始化配置
func
init()
v := viper.
new(
) v.
setconfigtype
("yaml"
) v.
setconfigname
(env)
v.addconfigpath
("../config/"
) v.
addconfigpath
("config/"
)readconfig
(v) v.
watchconfig()
v.onconfigchange
(func
(e fsnotify.event)
) config = v
}// getconfig 獲取配置
func
getconfig()
*viper.viper
func
readconfig
(v *viper.viper)
error
return
nil}config_test.go
package config
import
("testing"
)func
testgetconfig
(t *testing.t)
在二者的同級目錄下:
dev.yaml
addr::
8090
debugport::
8091db:
host
: localhost
port
:5432
執行config_test 檔案:
==
= run testgetconfig
:8090
localhost
config file changed: g:\go_workspace\gopath\src\cdd-platform-srv\config\dev.yaml
golang讀取配置檔案
在專案中往往將一些配置資訊放到配置檔案中,這樣在不同的執行環境中,只需修改配置檔案即可。以下介紹兩種通過第三方包獲取配置檔案的方式 一 通過gopkg.in ini.v1 go get gopkg.in ini.v11.配置檔案 test.conf mqtt mqtt hostname 127.0....
Golang讀取配置檔案 ini 資訊
package main import fmt io ioutil regexp strings func checkerr e error 函式名 getcfg tag string,cfg string string 參 數 tag string 引數的名稱 cfg string 配置資訊字串 ...
Golang庫 viper讀取配置檔案
viper是由steve francia編寫的開源配置解決方案,也是cobra的作者,我們來看下viper的功能 go get github.com spf13 vipergithub位址 在讀取配置檔案中我們將會演示viper的集中使用方式 我們以.yml檔案為例 這裡的配置檔案讀取可以使用相對路...