【发布时间】:2021-12-28 22:49:54
【问题描述】:
我希望生成的 yaml 文件包含正在写入为空对象的服务器数组。我该如何解决这个问题,以便将服务器数组写入 yaml 文件?
代码:
package configwritter
import (
"fmt"
"io/ioutil"
"log"
"gopkg.in/yaml.v2" //go get gopkg.in/yaml.v2
)
type Server struct {
name string `yaml:"name"`
ip string `yaml:"ip"`
}
type Confugration struct {
Name string
Servers []Server
}
func WriteConfig() {
config := Confugration{
Name: "Test",
Servers: []Server{
{"server1", "10.0.0.100"},
{"server1", "10.0.0.101"},
},
}
data, err := yaml.Marshal(&config)
if err != nil {
log.Fatal(err)
}
err2 := ioutil.WriteFile("config.yaml", data, 0)
if err2 != nil {
log.Fatal(err2)
}
fmt.Println("data written")
}
输出:
name: Test
servers:
- {}
- {}
【问题讨论】:
标签: go yaml marshalling