go-json序列化与反序列化

package main
import (
  "encoding/json"
  "fmt"
)
//Student 测试
type Student struct {
  ID   int  `json:"id"` //首字母大写,外部json包才能调用,可使用`json`来表示成小写来调用
  Gender string `json:"gender"`
  Name  string `json:"name"`
}
func main() {
  var stu1 = Student{
​    ID:   1,
​    Gender: "nan",
​    Name:  "kkk",
  }
//序列化:把编程语言里面的数据转换成json格式的字符串
  v, _ := json.Marshal(stu1)
  fmt.Println(v)
  fmt.Println(string(v))
//反序列化:把满足json格式的字符串转换为当前编程语言中的对象
  str := "{\"ID\":1,\"Gender\":\"nan\",\"Name\":\"kkk\"}"
  var stu2 = &Student{}
  json.Unmarshal([]byte(str), stu2)
  fmt.Println(stu2)
  fmt.Println(*stu2)
}
posted @ 2020-07-12 21:56  kylingx  阅读(135)  评论(0编辑  收藏  举报