golang 实现json类型不确定时的转换
将json转为结构体时,经常会遇到无法确定某个字段类型的情况。在Go中可以使用interface 任意类型来解决。
// convert json to struct// type uncertainpackage mainimport ( '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:%#vn', 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
以上为个人经验,希望能给大家一个参考,也希望大家多多支持好吧啦网。如有错误或未考虑完全的地方,望不吝赐教。
相关文章:
1. 解决Django响应JsonResponse返回json格式数据报错问题2. python 制作python包,封装成可用模块教程3. ASP.NET MVC增加一条记录同时添加N条集合属性所对应的个体4. Python爬取12306车次信息代码详解5. asp.net core服务限制堆内存大小的操作方法6. Python实现随机游走的详细解释7. vue项目打包部署跨域的实现步骤8. python pandas合并Sheet,处理列乱序和出现Unnamed列的解决9. ThinkPHP5实现JWT Token认证的过程(亲测可用)10. Python使用paramiko连接远程服务器执行Shell命令的实现

网公网安备