Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Unmarshal Nested JSON ke dalam Array Objek dalam Go?
Pertimbangkan data JSON berikut:
{ "1001":{ "level":10, "monster-id":1001, "skill-level":1, "aimer-id":301 }, "1002":{ "level":12, "monster-id":1002, "skill-level":1, "aimer-id":302 }, "1003":{ "level":16, "monster-id":1003, "skill-level":2, "aimer-id":303 } }
The matlamatnya adalah untuk menyahmarshal JSON ini menjadi pelbagai Monster objek.
type Monster struct { MonsterId int32 Level int32 SkillLevel int32 AimerId int32 }
Untuk mencapainya, ikuti langkah berikut:
type MonsterCollection struct { Pool map[string]Monster }
func (mc *MonsterCollection) FromJson(jsonStr string) error { var data *map[string]Monster b := []byte(jsonStr) return json.Unmarshal(b, &data) }
type Monster struct { MonsterId int32 `json:"monster-id"` Level int32 `json:"level"` SkillLevel int32 `json:"skill-level"` AimerId int32 `json:"aimer-id"` }
mc := new(MonsterCollection) err := mc.FromJson(jsonStr)
for id, monster := range mc.Pool { fmt.Println(id, monster) }
Dengan mengikut langkah ini, anda boleh berjaya menyahmarshal data JSON bersarang ke dalam tatasusunan objek Monster dalam Go.
Atas ialah kandungan terperinci Bagaimana untuk Unmarshal Nested JSON ke dalam Array Objek dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!