はじめに
go言語で設定ファイルを読み込む際、https://gopkg.in/ini.v1 というのがとても便利だったため紹介。
これを使う事で、Configファイルに記載したパラメータを簡単にgoで使う事ができる。
インストール
を参考に、
go get gopkg.in/ini.v1
でインストールが可能。
goでconfigファイルを読み込む
サンプルのファイルを見ながらだと理解しやすいと思うので、コードをベースに紹介。
読み込むconfigファイル
[web] port = 443 [db] name = oreoredb user = userA
よくある形式。
読み出すgoはこのような感じに記載
package main import ( "fmt" "gopkg.in/ini.v1" ) type Config struct{ Port int Db string User string } var Cnf Config func init(){ c, _ := ini.Load("config.ini") Cnf = Config{ Port: c.Section("web").Key("port").MustInt(), Db: c.Section("db").Key("name").MustString("hogehoge.sql"), User: c.Section("db").Key("user").String(), } } func main(){ fmt.Printf("%v \n", Cnf.Port) fmt.Printf("%v \n", Cnf.Db) fmt.Printf("%v \n", Cnf.User) }
結果
$ go run read.go 443 oreoredb userA
簡単に取り出す事ができた。
詳細の使い方はこちら
https://godoc.org/gopkg.in/ini.v1