package main

import (
"fmt"
"encoding/json"
) type ItemMessage struct {
ItemType int `json:"itemType"`
ItemId int `json:"itemId"`
ItemCount int `json:"itemCount"`
GoodsStatue *GoodsStatue
} type GoodsStatue struct{
GoodsId int
GoodsPrice int
} func main() {
JsonString := make(map[int]string)
item := make(map[int]*GoodsStatue)
JsonString[0] = `{"itemType": 1, "itemId": 2, "itemCount": 3, "GoodsStatue":{"GoodsId": 123, "GoodsPrice": 22}}`
JsonString[1] = `{"itemType": 4, "itemId": 5, "itemCount": 6, "GoodsStatue":{"GoodsId": 456, "GoodsPrice": 33}}`
for k, v := range JsonString{
var res ItemMessage
json.Unmarshal([]byte(v), &res)
item[k] = res.GoodsStatue
}
for k, v := range item{
fmt.Printf("k= %+v, v=%+v\n", k, *v)
}
}
package main

import (
"fmt"
"encoding/json"
) type ItemMessage struct {
ItemType int `json:"itemType"`
ItemId int `json:"itemId"`
ItemCount int `json:"itemCount"`
GoodsStatue *GoodsStatue
} type GoodsStatue struct{
GoodsId int
GoodsPrice int
} func main() {
var item ItemMessage
xsk := `{"itemType": 1, "itemId": 2, "itemCount": 3, "GoodsStatue":{"GoodsId": 123, "GoodsPrice": 22}}`
json.Unmarshal([]byte(xsk), &item)
fmt.Printf("item= %+v item.GoodsStatue=%+v\n", item, *item.GoodsStatue)
}
package main

import (
"fmt"
"encoding/json"
) type ItemMessage struct {
ItemType int `json:"itemType"`
ItemId int `json:"itemId"`
ItemCount int `json:"itemCount"`
GoodsStatue *GoodsStatue
} type GoodsStatue struct{
GoodsId int
GoodsPrice int
} func main() {
item := make(map[int][]ItemMessage, 10)
JsonString := make(map[int]string)
JsonString[0] = `{"itemType": 1, "itemId": 2, "itemCount": 3, "GoodsStatue":{"GoodsId": 123, "GoodsPrice": 22}}`
JsonString[1] = `{"itemType": 4, "itemId": 5, "itemCount": 6, "GoodsStatue":{"GoodsId": 456, "GoodsPrice": 33}}`
for k, v := range JsonString{
var res ItemMessage
json.Unmarshal([]byte(v), &res)
item[k] = append(item[k], res)
}
for k,v := range item{
fmt.Printf("item=%+v item.GoodsStatue=%+v\n", item[k], *v[0].GoodsStatue)
}
}

golang json解析到map中的更多相关文章

  1. go语言之进阶篇json解析到map

    1.json解析到map(通过类型断言,找到值和value类型) 示例: package main import ( "encoding/json" "fmt" ...

  2. [GO]json解析到map

    package main import ( "encoding/json" "fmt" ) var str string func main() { m := ...

  3. Golang ---json解析

    golang官方为我们提供了标准的json解析库–encoding/json,大部分情况下,使用它已经够用了.不过这个解析包有个很大的问题–性能.它不够快,如果我们开发高性能.高并发的网络服务就无法满 ...

  4. golang timeoutHandler解析及kubernetes中的变种

    Golang里的http request timeout比较简单,但是稍不留心就容易出现错误,最近在kubernetes生产环境中出现了的一个问题让我有机会好好捋一捋golang中关于timeout中 ...

  5. json解析转map

    HashMap<String, Object> map = new HashMap<String, Object>();    JSONObject jsonObject = ...

  6. golang 标准库 sync.Map 中 nil 和 expunge 区别

    本文不是 sync.Map 源码详细解读,而是聚焦 entry 的不同状态,特别是 nil 状态和 expunge 状态的区分. entry 是 sync.Map 存放值的结构体,其值有三种,分别为 ...

  7. TypeReference -- 让Jackson Json在List/Map中识别自己的Object

    private Map<String, Object> buildHeaders(Object params) { ObjectMapper objectMapper = JacksonH ...

  8. go语言怎么从(json后的)多层map中取值

    // 一个PHP中的多层关联数组,即Go中的多层map,如何从json字符串中解析,然后取到map中的某个具体的值. // 数据结构如下: cityInfo := "{ "stat ...

  9. iOS 中json解析数据出现中文乱码的问题

    一般服务器的编码格式都是UTF8,这样通过json解析下来的的数据,一般中文是不会出现乱码,但是如果服务器的编码格式不是UTF8,通过json解析的数据中的中文容易出现luan乱码,怎么解决这个问题呢 ...

随机推荐

  1. bzoj 1396/2865: 识别子串 后缀自动机+线段树

    水水的字符串题 ~ #include <map> #include <cstdio> #include <cstring> #include <algorit ...

  2. 洛谷P1006 传纸条(多维DP)

    小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个mm行nn列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了.幸运的是,他们 ...

  3. 块状链表 codevs 2333弹飞绵羊

    块状链表,分块处理,先预处理每一个点跳到下一个块 跳到哪,步数.然后修改的时候,修该那一个块即可 #include<cstdio>#include<cmath>int a[20 ...

  4. mongodb的状态分析

    1.借助工具 mongostat 分析mongodb运行状况 C:\Users\Administrator>mongostat --help //查看帮助 View live MongoDB p ...

  5. ansible 主机正则

    ansible <pattern> -m <module_name> -a <arguments> 该功能主要针对Inventory的主机列表,案例如下: 1.AL ...

  6. Bsgs模板

    模板最主要的是自己看得舒服,不会给自己留隐患,调起来比较简单,板子有得是,最主要的是改造出适合你的那一套.                  ——mzz #include<bits/stdc++ ...

  7. 高效使用Linux快捷键

    命令行操作快捷键 Ctrl+a跳到本行的行首,Ctrl+e则跳到页尾. Ctrl+u删除当前光标前面的所有文字, ctrl+k-删除当前光标后面的所有文字 Ctrl+w删除光标前的单词 Backsap ...

  8. Java 方法与数组

    方法 什么是方法? 方法定义:方法(Method),函数(function),其实就指一个特定的功能操作,程序中完成独立功能,可重复使用的一段代码的集合. 方法的定义 方法定义格式: [修饰符] 返回 ...

  9. ArcGIS10.3_解决属性表中文乱码问题

    借鉴前辈们解决ArcMap低版本属性表乱码的问题解决方法,勇敢的尝试了一下Pro中的解决方法,其实道理都一样.先来看看第一种方法:打开CMD,如果是ArcMap,输入如下命令: reg add HKE ...

  10. POM 标签大全详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...