This question already has an answer here:
Im trying to convert a yaml data into a struct and print it. The output I get for this program is empty.
package main
import (
"fmt"
"gopkg.in/yaml.v2"
)
type example struct {
variable1 string
variable2 string
}
func main() {
var a example
yaml.Unmarshal([]byte("variable1: asd
variable2: sdcs"), &a)
fmt.Println(a.variable1)
}
</div>
The documentation for Unmarshal
states that
Struct fields are only unmarshalled if they are exported (have an upper case first letter) and are unmarshalled using the field name lowercased as the default key.
So capitalizing your struct elements is the right thing to do.
type example struct {
Variable1 string
Variable2 string
}