我有一个 map[string]interface{} 因为解码为 JSON;对于普通数据,接口大多只是数字,但类型为字符串,如下所示:
var a interface{}
a="3"
然后所有的数据都会被存储到一个struct中。
type someStruct struct {
ID string
Number1 int
Number2 int
Number3 int
Number4 int
}
所以我需要将 interface 转换为 int,但不能轻松有效地做到这一点,因为只有代码是 https://play.golang.org/p/oktbvTUbk93,如果你考虑到我应该处理所有可能的错误
我想直接将其转换为 int,我一直在寻找解决方案,但任何这种转换都可以按我的意愿工作https://play.golang.org/p/Dw67U6kZwHC
如果您想知道为什么我不直接将其解码为结构,因为它是动态数据,实际解码是这样发生的:
type dataIn struct {
Code int `json:"code"`
ID string `json:"id"`
Data interface{} `json:"data"`
}
然后我根据code和id来处理Data,都是不同的数据结构,所以不能直接用JSON处理