zoukankan      html  css  js  c++  java
  • golang json解析到map中

    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
    ", 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
    ", 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
    ", item[k], *v[0].GoodsStatue)
    	}
    }
    
  • 相关阅读:
    compass 制作css sprites
    net模块
    javascript -- 代理模式
    javascript -- 单例模式
    js 对象的浅拷贝和深拷贝
    js 对象的封装,继承,多态的理解
    this,call,apply
    flex 实现圣杯布局
    ubuntu中安装mongodb
    devDependencies和dependencies的区别
  • 原文地址:https://www.cnblogs.com/nyist-xsk/p/11496399.html
Copyright © 2011-2022 走看看