(三十九)golang--反序列化

前端之家收集整理的这篇文章主要介绍了(三十九)golang--反序列化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

反序列化:是指将json字符串反序列化成原来的数据类型。

import (
    "encoding/json"
    fmt"
)

type monster struct {
    Name     string  `json:name`
    Age      int     `json:age`
    Birthday birthday`
    Sal      float64 `json:sal`
    Skill    skill`
}

func unmarshalStruct() {
    str := {\"name\":\"牛魔王\",\"age\":10,\"birthday\":\"1994-09-18\",\"sal\":10000,\"skill\":\"牛魔拳\"}"
    var monster monster
    err := json.Unmarshal([]byte(str),&monster)
    if err != nil {
        fmt.Println(unmarshal error=,err)
    }
    fmt.Printf(反序列化后 monster=%v\n{\"address\":\"水帘洞\",\"age\":20,\"name\":\"孙悟空\",\"skill\":\"七十二变\"}var a map[string]interface{}
    err := json.Unmarshal([]a)
    [{\"address\":\"水帘洞\",\"skill\":[\"七十二变\",\"如意金箍棒\"]}," +
        {\"age\":30,\"name\":\"猪八戒\"}]var a []map[

 

 需要注意的是:在反序列化之后的数据类型要与json字符串相对应。

猜你在找的Go相关文章