du532861657 2015-03-23 05:30
浏览 699
已采纳

将[] uint8 / [] byte转换为哈希表GoLang

My server sends a JSON response which looks like shown below

{"SortAs": "SGML","GlossTerm": "Standard Generalized Markup Language","Acronym": "SGML","Abbrev": "ISO 8879:1986"}

But My Go program receives it as type []uint8 . Also the size JSON sent from the server is not of definite size , it varies . How do i convert it into a Hash table containing key/value pair again ?

  • 写回答

1条回答 默认 最新

  • dongye9191 2015-03-23 06:18
    关注

    Note that byte is an alias for uint8. Having said that what you want is a simple json unmarshal:

    js := []byte(`{"SortAs": "SGML","GlossTerm": "Standard Generalized Markup Language", "Acronym": "SGML","Abbrev": "ISO 8879:1986"}`)
    
    m := map[string]interface{}{}
    if err := json.Unmarshal(js, &m); err != nil {
        panic(err)
    }
    fmt.Printf("%q",m)
    

    Output (wrapped):

    map["SortAs":"SGML" "GlossTerm":"Standard Generalized Markup Language"
        "Acronym":"SGML" "Abbrev":"ISO 8879:1986"]
    

    Try it on the Go Playground.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教