1 回答

TA贡献1793条经验 获得超6个赞
我相信这是因为您的模型中有额外的间接层。
type JSONType struct {
FirstSet map[string]string `json:"set1"`
}
应该够了。如果您map[string]string在 json 中指定对象被识别为该映射。你创建了一个结构来包装它,但是像这样的一团json;
{
"a":"11",
"b":"22",
"c":"33"
}
其实可以直接解组成 map[string]string
编辑:基于评论的其他一些模型
type JSONType struct {
FirstSet map[string]Point `json:"set1"`
}
type Point struct {
X string `json:"x"`
Y string `json:"y"`
Z string `json:"z"`
}
这使您的 3-d 点成为静态类型的结构,这很好。如果您想做快速而肮脏的事情,您也可以使用map[string]map[string]string which 将提供地图地图,以便您可以访问点值,例如FirstSet["a"]["x"],它会返回"11".
第二次编辑;显然我没有仔细阅读你的代码,因为上面的例子是一样的。基于此,我猜你想要
FirstSet map[string]map[string]string `json:"set1"`
选项。尽管在您编辑后我并不完全清楚。
- 1 回答
- 0 关注
- 194 浏览
添加回答
举报