Учитывая следующее YAML:
array.test: ["val1", "val2", "val3"]
Я распаковываю его, используя gopkg.in/yaml.v2 в map[string]interface{}
. Затем я получаю один ключ, значение которого представляет собой массив из 3 значений.
Когда я затем снова маршалю его в YAML, получающийся YAML выглядит так:
array.test:
- val1
- val2
- val3
Массив был фактически маршалирован как последовательность вместо массива.
Это весь код GoLang:
func main(){
data := `array.test: ["val1", "val2", "val3"]`
conf := make(map[string]interface{})
yaml.Unmarshal([]byte(data), conf)
data2, _ := yaml.Marshal(conf)
fmt.Printf("%s\n", string(data2))
}
Как мне решить эту проблему?