我有一組自定義值[ 1, "test", { "a" : "b" }]我可以解組到 []interface{},但這不是我想要的。我想解組這個數組來構造type MyType struct { Count int Name string Relation map[string]string}在 Go 中是否可以使用標準庫或側庫?
3 回答

jeck貓
TA貢獻1909條經驗 獲得超7個贊
由于您的 json 在數組中包含不同類型的值,因此無法簡單地用 go 解析它。如果您可以控制 json 輸入的格式,請將三個值包裹起來{}形成一個對象,如下所示:
[
{
"Count": 1,
"Name": "test",
"Relation": { "a" : "b" }
}
]
然后解析到你的結構應該工作。
如果您無法控制 json 輸入。將其解析為 []interface{},然后手動將值分配給您的結構。即使這可能會變得棘手,這取決于您想要支持的可能響應的復雜性。
請注意,這個問題指向了 golangs json 解析方法的核心限制,因此 - 據我所知 - 它也無法通過庫解決。
- 3 回答
- 0 關注
- 219 瀏覽
添加回答
舉報
0/150
提交
取消