1 回答
TA贡献1830条经验 获得超3个赞
创建一个自定义解组器,解组整个事情,然后为您转换:
type MyStruct struct {
ID int `json:"Id"`
Language string `json:"Language"`
Location string `json:"Location"`
}
type val struct {
Value struct {
String string `json:"String_"`
Long int `json:"Long"`
}
}
func (s *MyStruct) UnmarshalJSON(p []byte) error {
var result struct{
ID val `json:"Id"`
Language val `json:"language"`
Location val `json:"location"`
}
if err := json.Unmarshal(p, &result); err != nil {
return err
}
s.ID = result.ID.Value.Long
s.Language = result.Langauge.Value.String
s.Location= result.Location.Value.String
return nil
}
请注意,在此示例中完成了最少的错误检查和数据验证
- 1 回答
- 0 关注
- 87 浏览
添加回答
举报