如何將以下 JSON 解組為 Go 中的物件數組語言?
{ "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} }
提供的JSON 需要一些修改才有效,例如在頂層物件中的鍵值對之間加上逗號:
{ "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 } }
要將這個JSON解組為物件數組,可以使用以下程式碼:
type Monster struct { MonsterId int32 `json:"monster-id"` Level int32 `json:"level"` SkillLevel int32 `json:"skill-level"` AimerId int32 `json:"aimer-id"` } type MonsterCollection struct { Pool map[string]Monster } func (mc *MonsterCollection) FromJson(jsonStr string) error { var data =&mc.Pool b := []byte(jsonStr) return json.Unmarshal(b, data) }
中此程式碼:
錯誤回傳很有用用於偵錯目的,讓您可以偵測錯誤,例如無效的 JSON 語法。
可以在 Golang Playground 上找到工作範例:http://play.golang.org/p/4EaasS2VLL。
以上是如何在 Go 中將 JSON 物件解組為結構數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!