加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-16 19:18:19 所属栏目:大数据 来源:网络整理
导读:我试图解析一个包含JSON数据的文件: [ {"a" : "1"},{"b" : "2"},{"c" : "3"}] 由于这是一个带有动态键的JSON数组,我以为可以使用: type data map[string]string 但是,我无法使用地图解析文件: c,_ := ioutil.ReadFile("c")dec := json.NewDecoder(bytes
我试图解析一个包含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
    } 
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读