go实现json数组嵌套

go实现json数组嵌套

引用包 “encoding/json"

定义以下结构体

type person struct {
        Name    string          `json:"name"`
        Sex             string          `json:"sex"`
        Age             string          `json:"age"`
}

type test struct {
        Class   int                     `json:"class"`
        Person  []person        `json:"person"`
}

创建实例如下

class6 := 
`{      "class":6,
        "person":[{
                "name":"wangha",
                "sex":"male",
                "age":"18"
        },
        {
                "name":"zhang",
                "sex":"female",
                "age":"16"
        }]
}`

class6进行解析

var keys test
if err := json.Unmarshal([]byte(class6), &keys);err != nil{
        fmt.Println(err)
}else {
        fmt.Printf("%+v\n", keys)
        fmt.Printf("%+v\n", keys.Person[1])
        fmt.Printf("%s\n", keys.Person[0].Sex)
}

一些参考

Error : JSON invalid character \'}\' looking for beginning of object key string