利用json.Unmarshal转json为map类型

package mainimport ("encoding/json""fmt"
)func main() {var jsonStr = `{"name": "WQ","age": 18,"phone": "15858585858"}` //key-value类型可以用struct/map接收var m = make(map[string]string)if err := json.Unmarshal([]byte(jsonStr), &m);err !=nil{fmt.Errorf("err:%v",err)}fmt.Printf("map:%v\n",m)for k,v :=range m{fmt.Printf("map,k:%v v:%v\n",k,v)}var jsonStr2 = `["WQ","18","15858585858"]`  //json中数组如果用Unmarshal解析的话对应切片数组,key-value则解析不到slice里面var slice = make([]string,3)if err := json.Unmarshal([]byte(jsonStr2), &slice);err !=nil{fmt.Errorf("err:%v",err)}fmt.Printf("slice:%v\n",slice)for k,v :=range slice{fmt.Printf("slice,k:%v v:%v\n",k,v)}
}
//总之Unmarshal接收容器可以是结构体、map、slice,json类型需要对应才,详见Unmarshal源码注释
//map:map[age: name:WQ phone:15858585858]
//map,k:age v:
//map,k:phone v:15858585858
//map,k:name v:WQ
//slice:[WQ 18 15858585858]
//slice,k:0 v:WQ
//slice,k:1 v:18
//slice,k:2 v:15858585858

golang利用json.Unmarshal转json为map、slice类型相关推荐

  1. Go 学习笔记(20)— Go 操作 json 文件(编码生成 json、解码 json 为 map、解码 json 为 struct)

    1. Json 概述 Go 语言对于标准格式的编码和解码都有良好的支持,由标准库中的 encoding/json . encoding/xml . encoding/asn1 等包提供支持并且这类包都 ...

  2. golang使用josn.Unmarshal报错:unexpected end of JSON input

    在go语言中使用Unmarshal()解析来自HTTP响应的JSON数据报错:unexpected end of JSON input问题一般是分为以下情况: 当我们在通过http协议访问并读取数据时 ...

  3. Golang号称最快的Json解析器速度可达5623ns/op

    关于我 作者博客|文章首发 golang对json序列化和反序列化的操作实在是难受,所以说用习惯了高级语言特性,再转到这些偏原生的写法上就会很难受. 不多BB,开始记录. 序列化库的选择 当写个小de ...

  4. 从unmarshal带json字符串字段的json说起

    事情是这样的,有一段json,里面有字段本应该是obj,但是encode的时候被当成string在,就成了这个样子: {"body":"{\"sn\" ...

  5. json日期格式化 java_java_Java Web程序中利用Spring框架返回JSON格式的日期,返回Json时格式化日期Date 第一 - phpStudy...

    Java Web程序中利用Spring框架返回JSON格式的日期 返回Json时格式化日期Date第一步:创建CustomObjectMapper类 /** * 解决SpringMVC使用@Respo ...

  6. golang学习笔记(结构体+json)

    结构体 结构体等价关系,只有==和!=关系,没有> < 关系,只有字段和属性完全相同,才等价,并且属于同一类型结构体,不同结构体不能比较,每一个不同的指针结构体的地址均不同 type Us ...

  7. go每日新闻(2021-12-28)——深入理解Go Json.Unmarshal精度丢失之谜

    每日一谚:make the zero value useful. go中文网每日资讯--2021-12-28 一.Go语言中文网 Golang AI 开发:通过将 AI 集成到你的应用程序 Go 1. ...

  8. 把json对象串转换成map对象

    2019独角兽企业重金招聘Python工程师标准>>> /**    * nc只支持简单的   * 把json对象串转换成map对象    * @param jsonObjStr e ...

  9. MapString, Object map 集合转 json数组, json数组转list ,按条输出到es

    2019独角兽企业重金招聘Python工程师标准>>> Map<String, Object> map 集合转 json数组, json数组转list ,按条输出到es ...

最新文章

  1. UITableView中selectRowAtIndexPath: animated:scrollPosition滚动到指定Row
  2. 网络:TCP粘包问题?如何解决?
  3. 闭包、执行环境、作用域链
  4. Google今日更新PR值,帆船书会由1升到了3
  5. git add失效问题以及git status结果与github网页结果不一致(转载+自己整理)
  6. 水印鲁棒性的分析matlab程序,图像数字水印+matlab程序
  7. 远程过程调用(RPC)
  8. android菜单详解四:子菜单
  9. 再来一个end——好像很有用
  10. springcloud微服务视频教程
  11. 南开100题C语言(001-010)
  12. ESP32 调试SHT20踩的坑
  13. 网络中的公网和内网 (ipv4)
  14. 操作系统课程设计-进程管理-c++描述
  15. Windows常见基本进程三:dumprep or dumprep进程(Dump Reporting Tool启动项)
  16. Python自学之分子运动练习题
  17. 用Java写一款小游戏
  18. 二次规划问题(qp)和序列二次规划问题(sqp)的简单理解
  19. 弘辽科技:淘宝平台的推广方法有哪些?六大推广方式介绍
  20. 【历史上的今天】3 月 12 日:万维网概念被提出;Google Code 停运;仙童半导体公司被收购

热门文章

  1. layui表格固定列覆盖滚动条导致错位
  2. 为什么python不需要编译_为什么我用Go写机器学习部署平台,而偏偏不用Python?...
  3. 数据结构(二)——堆
  4. Springboot Vue Login(从零开始实现Springboot+Vue登录)
  5. cpu针脚测试软件,Sandsifter:一款专门针对X86处理器的模糊测试工具
  6. mysql 撤销删除_线上磁盘告警,mysql无法释放空间,踩了个大坑,大家记得别踩坑...
  7. (四)java版spring cloud+spring boot 社交电子商务平台-断路器(Hystrix)
  8. 【Android Demo】简单手机通讯录
  9. dedecms修改数据库信息的路径
  10. linux 下创建GRE隧道