1 回答
TA贡献1793条经验 获得超6个赞
对于 Marshaling 和 Unmarshaling,您应该将 struct 字段定义为导出字段,并且目标应该是 regs 的映射。此外 bool 类型对 the 无效,Enabled您应该将其更改为 int
type regs struct {
Enabled int `json:"enabled,omitempty"`
Pct float64 `json:"pct,omitempty"`
}
func main() {
a := `{
"1": {
"enabled": 1,
"pct": 0.5
},
"2": {
"enabled": 1,
"pct": 0.6
},
"3": {
"enabled": 1,
"pct": 0.2
},
"4": {
"enabled": 1,
"pct": 0.1
}
}`
dest := make(map[string]regs)
json.Unmarshal([]byte(a), &dest)
fmt.Println(dest)
}
输出将是:
map[1:{1 0.5} 2:{1 0.6} 3:{1 0.2} 4:{1 0.1}]
- 1 回答
- 0 关注
- 100 浏览
添加回答
举报