dpg98445 2017-10-18 13:22
浏览 106
已采纳

用数组中包含的[int]字符串映射解组JSON

Im trying to unmarshall the following JSON into a struct, but there I am unable to translate the contents of the values field with the [[int,string]] This is what I have so far:

type Response struct {
            Metric struct {
                Name string `json:"name,omitempty"`
                Appname string `json:"appname,omitempty"`
            } `json:"metric,omitempty"`
            Values []map[int]string `json:"values,omitempty"`
}

The JSON file:

{
   "metric":{
      "name":"x444",
      "appname":"cc-14-471s6"
   },
   "values":[
      [
         1508315264,
         "0.0012116165566900816"
      ],
      [
         1508315274,
         "0.0011871631158857396"
      ]
   ]
}
  • 写回答

1条回答 默认 最新

  • duanqi5114 2017-10-18 13:26
    关注

    The data you showed should be unmarshaled to:

    type Response struct {
                Metric struct {
                    Name string `json:"name,omitempty"`
                    Appname string `json:"appname,omitempty"`
                } `json:"metric,omitempty"`
                Values [][]interface{} `json:"values,omitempty"`
    }
    

    If you want to to transfer it to map implement json.Unmarshaller interface - https://golang.org/pkg/encoding/json/#Unmarshaler

    You can have something like:

    type Item struct {
        Key int
        Val string
    }
    func(item *Item) UnmarshalJSON([]byte) error {
        // TODO: implement 
    }
    
    type Response struct {
                Metric struct {
                    Name string `json:"name,omitempty"`
                    Appname string `json:"appname,omitempty"`
                } `json:"metric,omitempty"`
                Values []Item  `json:"values,omitempty"`
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来