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"`
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?