我有乙個yaml檔案,當前寫為:
keys:
- key: secret/dog
values:
- username: shiba
- password: inu
- key: secret/cat
values:
- dbhost: localhost
- words: meow
但是,此yaml檔案經常更改,因此每次可以使用不同的值新增新條目:
keys:
- key: secret/dog
values:
- username: shiba
- password: inu
- key: secret/cat
values:
- dbhost: localhost
- words: meow
- key: secret/mouse
values:
- color: white
- key: secret/clouds
values:
- type: fluffy
我從使用gopkg.in/yaml.v2包開始就知道,如果所有值都相同,我可以解析yaml檔案,例如:
type secrets struct `json:"values"`
} `json:"keys"`
func main() {
var secret secrets
reader, err := os.open("demo.yml")
if err != nil {
log.fatal(err)
buf, _ := ioutil.readall(reader)
yaml.unmarshal(buf, &secret)
fmt.printf("%+v\n", secret.keys[1].key)
在上面的示例中,它僅適用於金鑰/狗金鑰,而不適用於其他金鑰。
當新值經常新增到yaml檔案中時,如何在go中執行此操作?
謝謝
Java解析Yaml介紹
1 首先是解析,如下 yaml yaml new yaml 讀入檔案 object result yaml.load yamlstring system.out.println result.getclass system.out.println result 這個yaml有很多的load方法 普通...
python解析yaml檔案
yaml是乙個可讀性高,用來表達資料序列的格式。yaml引用了其他多種語言,包括 c語言 python perl,並從xml 電子郵件的資料格式中獲得靈感。目前已經有數種程式語言或指令碼語言支援 或者說解析 這種語言。yaml的語法和其他高階語言類似,並且可以簡單表達清單 雜湊表,標量等資料形態。它...
go語言解析yaml
關於yaml語法網路上的資料非常多,不做特別整理。個人理解yaml主要是切片 map等資料結構的一種比較容易解讀的格式。go get gopkg.in yaml.v2hostname sunny addr 127.0.0.1 logs name business logpath home work ...