This package is adopt from http://code.google.com/p/goconf/ And porting it to Go 1 spec.
assume your local package path is $HOME/go:
export GOPATH=$HOME/go # method 1: go get github.com/dlintw/goconf go test github.com/dlintw/goconf # test it # method 2: cd $GOPATH/src hg clone https://[email protected]/dlintw/goconf.git cd goconf make make test # test it
sample usage:
import "github.com/dlintw/goconf"
NOTE: All section names and options are case insensitive. All values are case sensitive.
Config:
host = something.com port = 443 active = true compression = off
Code:
c, err := goconf.ReadConfigFile("something.config") c.GetString("default", "host") // return something.com c.GetInt("default", "port") // return 443 c.GetBool("default", "active") // return true c.GetBool("default", "compression") // return false
Config:
[default] host = something.com port = 443 active = true compression = off [service-1] compression = on [service-2] port = 444
Code:
c, err := goconf.ReadConfigFile("something.config") c.GetBool("default", "compression") // returns false c.GetBool("service-1", "compression") // returns true c.GetBool("service-2", "compression") // returns GetError