为了账号安全,请及时绑定邮箱和手机立即绑定

将 json 数组解组为结构

将 json 数组解组为结构

Go
慕丝7291255 2021-07-28 21:17:04
我有一组自定义值[    1,    "test",    { "a" : "b" }]我可以解组到 []interface{},但这不是我想要的。我想解组这个数组来构造type MyType struct {    Count int    Name string    Relation map[string]string}在 Go 中是否可以使用标准库或侧库?
查看完整描述

3 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

由于您的 json 在数组中包含不同类型的值,因此无法简单地用 go 解析它。如果您可以控制 json 输入的格式,请将三个值包裹起来{}形成一个对象,如下所示:


[

    {

        "Count": 1,

        "Name": "test",

        "Relation": { "a" : "b" }

     }

]

然后解析到你的结构应该工作。


如果您无法控制 json 输入。将其解析为 []interface{},然后手动将值分配给您的结构。即使这可能会变得棘手,这取决于您想要支持的可能响应的复杂性。


请注意,这个问题指向了 golangs json 解析方法的核心限制,因此 - 据我所知 - 它也无法通过库解决。


查看完整回答
反对 回复 2021-08-02
  • 3 回答
  • 0 关注
  • 196 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信