9
这是我的YAML文件。Golang YAML阅读地图地图
description: fruits are delicious
fruits:
apple:
- red
- sweet
lemon:
- yellow
- sour
我可以读这与gopkg.in/yaml.v1
包一个平坦的版本,但我坚持试图弄清楚如何,当它得到了什么似乎像地图的地图阅读本YAML文件。
package main
import (
"fmt"
"gopkg.in/yaml.v1"
"io/ioutil"
"path/filepath"
)
type Config struct {
Description string
Fruits []Fruit
}
type Fruit struct {
Name string
Properties []string
}
func main() {
filename, _ := filepath.Abs("./file.yml")
yamlFile, err := ioutil.ReadFile(filename)
if err != nil {
panic(err)
}
var config Config
err = yaml.Unmarshal(yamlFile, &config)
if err != nil {
panic(err)
}
fmt.Printf("Value: %#v\n", config.Description)
fmt.Printf("Value: %#v\n", config.Fruits)
}
它无法获取嵌套Fruit。它似乎回到空虚。 Value: []main.Fruit(nil)
。
是的。那正是我所期待的。谢谢。 – squarism 2014-10-10 16:23:19