Golang将JSON数组解析成数据结构

前端之家收集整理的这篇文章主要介绍了Golang将JSON数组解析成数据结构前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图解析一个包含JSON数据的文件
[
  {"a" : "1"},{"b" : "2"},{"c" : "3"}
]

由于这是一个带有动态键的JSON数组,我以为可以使用:

type data map[string]string

但是,我无法使用地图解析文件

c,_ := IoUtil.ReadFile("c")
dec := json.NewDecoder(bytes.NewReader(c))
var d data
dec.Decode(&d)


json: cannot unmarshal array into Go value of type main.data

解析包含JSON数据的文件的最简单的方法是将一个数组(仅字符串到字符串类型)转换为Go结构体?

编辑:进一步阐述接受的答案 – 这是真的,我的JSON是一个地图数组。为了使我的代码工作,文件应该包含:

{
  "a":"1","b":"2","c":"3"
}

然后可以读入map [string]字符串

这是因为你的json实际上是一系列的地图,但是你正在试图将它编排成一个地图。尝试使用以下内容
type YourJson struct {
    YourSample []struct {
        data map[string]string
    } 
}

猜你在找的Go相关文章