• 免费注册  马上登录
  • 切换到窄版
  • go语言|go语言部落|go文库

    查看: 72|回复: 1

    go语言的结构体与json

    [复制链接]

    15

    主题

    16

    帖子

    69

    积分

    网站编辑

    Rank: 8Rank: 8

    积分
    69
    发表于 2019-12-1 15:37:06 | 显示全部楼层 |阅读模式
    本帖最后由 go酋长 于 2019-12-1 15:40 编辑

    go语言的结构体与json

    package main

    import (
       "encoding/json"
       "fmt"
    )

    //结构体与json
    //1.序列号:把go语言的结构体变量转成json格式的字符串
    //2.反序列号:把json格式的字符串转成go语言能识别的结构体变量
    type person struct {
       Name string
       Age int
    }
    func main(){
       p :=person{
          Name: "go语言",
          Age:  100,
       }
       //序列化
    b,err :=json.Marshal(p)
       if err !=nil{
          fmt.Println(err)
       }
       fmt.Println(string(b))
       //反序列化
    str :=`{"Name":"go语言啊","Age":123}`
       var p1 person
       json.Unmarshal([]byte(str),&p1)//传指针是为了能在json.Unmaarshal()里面修改p1的值
    fmt.Println(p1)
    }



    打印结果:

    {"Name":"go语言","Age":100}

    {go语言啊 123}


    回复

    使用道具 举报

    15

    主题

    16

    帖子

    69

    积分

    网站编辑

    Rank: 8Rank: 8

    积分
    69
     楼主| 发表于 2019-12-1 15:41:18 | 显示全部楼层
    6666
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Go语言社区

    GMT+8, 2020-4-2 02:21 , Processed in 0.040182 second(s), 17 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表