這個(gè) Go Yaml 解釋示例 https://gist.github.com/suntong001/74c85d15b19ef4b14b0e可以解組一個(gè)簡(jiǎn)單的 YAML,如下所示:foo: 1bar: - one - two現(xiàn)在我想解釋一個(gè)完全相同數(shù)據(jù)結(jié)構(gòu)的數(shù)組,正確的方法是什么?到目前為止,以下是我的代碼,它沒(méi)有按預(yù)期工作。請(qǐng)幫忙。package mainimport ( "fmt" "log" "gopkg.in/yaml.v2")type Config struct { Foo string Bar []string}type Configs struct { Cfgs []Config}var data = `- foo: 1 bar: - one - two - three- foo: 2 bar: - one1 - two2 - three3`func main() { var config Configs /* filename := os.Args[1] source, err := ioutil.ReadFile(filename) if err != nil { panic(err) } */ source := []byte(data) err := yaml.Unmarshal(source, &config) if err != nil { log.Fatalf("error: %v", err) } //fmt.Printf("Value: %#v\n", config.Bar[0]) fmt.Printf("--- config:\n%v\n\n", config)}更新:Jfly 指出,為了使它工作,只需將 my 替換var config Configs為var config []Config,它就可以解決問(wèn)題。現(xiàn)在我想如果將我的數(shù)據(jù)定義更改為以下內(nèi)容,我上面的代碼將起作用。foobars: - foo: 1 bar: - one - two - three - foo: 2 bar: - one1 - two2 - three3不,它沒(méi)有。請(qǐng)幫忙。
- 1 回答
- 0 關(guān)注
- 200 瀏覽
添加回答
舉報(bào)
0/150
提交
取消