相思资源网 Design By www.200059.com
将json转为结构体时,经常会遇到无法确定某个字段类型的情况。在Go中可以使用interface 任意类型来解决。
// convert json to struct // type uncertain package main import ( "fmt" "encoding/json" ) type Host struct { Id interface{} IdcId interface{} } func main() { b := []byte(`{"ID": 11, "IDCid": "1001"}`) m := Host{} err := json.Unmarshal(b, &m) if err != nil { fmt.Println("Umarshal failed:", err) return } fmt.Printf("m:%#v\n", m) }
output:
m:main.Host{Id:11, IdcId:”1001”}}
补充:gin bindJSON结构体中有不确定类型的字段
结构体中有不确定类型的字段,用interface{},BindJSON后根据输入自动存储对应类型,比如
type student struct { Name string `json:"name"` Info interface{} `json:"info"` }
比如,info的输入
输入
类型
12
float64
“str”
string
{"str":"value"}
map[string]interface {}
true
bool
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
标签:
golang,json类型转换
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无golang 实现json类型不确定时的转换的评论...