为了账号安全,请及时绑定邮箱和手机立即绑定

将 YAML 解组为结构体

将 YAML 解组为结构体

Go
守着星空守着你 2021-09-27 20:34:13
我正在尝试将 YAML 数据解析为字符串:package mainimport (    "fmt"    "log"    "gopkg.in/yaml.v2")type Config struct {    foo_bar string}func FailOnError(err error, msg string) {    if err != nil {        log.Fatalf("%s: %s", msg, err)        panic(fmt.Sprintf("%s: %s", msg, err))    }}func ParseYAMLConfig(data []byte) *Config {    config := Config{}    err := yaml.Unmarshal(data, &config)    if err != nil {        FailOnError(err, "Failed to unmarshal the config")    }    return &config}var configYAMLData = `---foo_bar: "https://foo.bar"`func main() {    config := ParseYAMLConfig([]byte(configYAMLData))    fmt.Printf("%v", config)}出于某种原因,config 是一个空结构 &{}。
查看完整描述

2 回答

?
森栏

TA贡献1810条经验 获得超5个赞

您的结构字段未导出。导出它们,它会起作用。


type Config struct {

    FooBar string `yaml:"foo_bar"`

}


查看完整回答
反对 回复 2021-09-27
?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

资本问题:

foo_bar --> foo_bar


查看完整回答
反对 回复 2021-09-27
  • 2 回答
  • 0 关注
  • 386 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信