我需要用 [][]interface{} 数组解组复杂的 json 数据。我想使用更抽象的结构类型来解组它,但 Golang 只能将其识别为 []interface{}。示例代码:// I want to use this, but not workvar r1 = struct { Data map[string]interface{}}{}// Works well, but too complex if data nest muchvar r2 = struct { Data struct{ P1 int64 P2 [][]interface{} }}{}jsonData := []byte(`{"data" :{"p1": 0, "p2":[["1", null], ["2", null] ]}}`)json.Unmarshal (jsonData, &r1)_, ok := r1.Data["p2"].([][]interface{})fmt.Println(ok)fmt.Println("======")_, ok = r1.Data["p2"].([]interface{})fmt.Println(ok)fmt.Println("======")json.Unmarshal (jsonData, &r2)fmt.Println(r2.Data.P2)输出:false======true======[[1 <nil>] [2 <nil>]]
- 1 回答
- 0 关注
- 168 浏览
添加回答
举报
0/150
提交
取消