欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

go多層次json解析

林雅南1年前9瀏覽0評論

Go語言內置了對JSON的支持,這使得在Go語言中對JSON進行操作非常方便。多層次JSON解析是在處理JSON數據時非常常見的一種情境。具體的實現方法如下:

type Person struct {
Name    string `json:"name"`
Age     int    `json:"age"`
Address `json:"address"` // 嵌套解析Address
}
type Address struct {
Province string `json:"province"`
City     string `json:"city"`
}
func UnmarshalJSON(data []byte) (person Person, err error) {
err = json.Unmarshal(data, &person)
return
}
func main() {
data := []byte(`
{
"name": "alice",
"age": 18,
"address": {
"province": "guangdong",
"city": "shenzhen"
}
}
`)
person, err := UnmarshalJSON(data)
if err != nil {
log.Fatal(err)
}
fmt.Printf("name: %v age: %v province: %v city: %v", person.Name, person.Age, person.Address.Province, person.Address.City)
}

代碼中的Person結構體中嵌套了Address,而在UnmarshalJSON方法中,我們使用&person解析JSON數據。回到main函數,我們將JSON數據傳入UnmarshalJSON方法并得到解析后的person對象。最終通過打印輸出person的屬性值,我們就能夠在控制臺輸出正確的結果。