3 回答
TA贡献2016条经验 获得超9个赞
数据有问题。它不是有效的 JSON,因为它有尾随逗号。
试试这个:
{
"data1" : {
"tag" : "some_tag1",
"info" : "some_info1"
},
"data2" : {
"tag" : "some_tag2",
"info" : "some_info2"
}
}
TA贡献1843条经验 获得超7个赞
您必须大写someStruct字段和 json 必须有效格式。
type someStruct struct {
Tag string `json:"tag"`
Info string `json:"info"`
}
TA贡献1831条经验 获得超10个赞
您的示例 json 有多余的逗号 - 已删除
数据结构是一对带键的 someStruct,所以需要是一个映射
大写 json 结构字段
这是一个基于您的代码的工作示例
package main
import (
"encoding/json"
"fmt"
)
type someStruct struct {
Tag string `json:"tag"`
Info string `json:"info"`
}
func main() {
buf := `{
"data1" : {
"tag" : "some_tag1",
"info" : "some_info1"
},
"data2" : {
"tag" : "some_tag2",
"info" : "some_info2"
}
}`
dat := make(map[string]someStruct)
if err := json.Unmarshal([]byte(buf), &dat); err != nil {
panic(err)
}
fmt.Println("Hello, playground", dat)
}
操场https://play.golang.org/p/ZGuCcGI3vA6
- 3 回答
- 0 关注
- 136 浏览
添加回答
举报