大佬教程收集整理的这篇文章主要介绍了解密未知字段的JSON,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
{"a":1,"b":2,"?":1,"??":1}
我知道它有“a”和“b”字段,但我不知道其他字段的名称.所以我想解散它在以下类型:
type Foo struct { A int `json:"a"` B int `json:"b"` X map[string]interface{} `json:???` // Rest of the fields should go here. }
我怎么做?
type _Foo Foo func (f *Foo) UnmarshalJSON(bs []byte) (err error) { foo := _Foo{} if err = json.Unmarshal(bs,&foo); err == nil { *f = Foo(foo) } m := make(map[string]interface{}) if err = json.Unmarshal(bs,&m); err == nil { delete(m,"a") delete(m,"b") f.X = m } return err }
类型_Foo是必要的,以避免解码时的递归.
以上是大佬教程为你收集整理的解密未知字段的JSON全部内容,希望文章能够帮你解决解密未知字段的JSON所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。