gopkg.in/yaml.v2 是 go 语言解析 yaml 格式配置文件的开源库,
源码地址如下:
https://github.com/go-yaml/yaml
使用安装步骤如下:
在命令行执行
go get gopkg.in/yaml.v2
示例代码:
conf.yaml 文件
rabbitmq: host: localhost port: 5672 username: admin password: password
需要注意 yaml 文件里面的字符都是小写。
go 代码示例:
package main import ( "fmt" "io/ioutil" "log" yaml "gopkg.in/yaml.v2" ) type Conf struct { RabbitMQ struct { Host string `yaml:"host"` Port int64 `yaml:"port"` Username string `yaml:"username"` Password string `yaml:"password"` } } func readConf(filename string) (*Conf, error) { buf, err := ioutil.ReadFile(filename) if err != nil { return nil, err } var conf Conf err = yaml.Unmarshal(buf, &conf) if err != nil { return nil, fmt.Errorf("in file %q: %v", filename, err) } return &conf, nil } func main() { conf, err := readConf("conf.yaml") if err != nil { log.Fatal(err) } fmt.Print("%v", conf) }