需要引入包:

import (
"encoding/json"
)

 

序列化:
我们定义一个结构体(实体对象),来进行序列化为字符串

type Person stuct{
 Name string
 Age int
}

func main(){
 zhangshan := Person {
  Name ="zx"
  Age = 20
 }

 data,err := json.Marshal(zhangshan) //data 此时为 byte数组,需要 string 进行转换
 if err == nil{
  fmt.Print("error")
  return
 }
 fmt.Println(string(zhangshan ))
}

反序列化:

rawJson :=`{"Name":"zhangshan","Age":20}` //使用反引号
zs := Person{} 
err := json.Unmarshal([]byte(rawJson),&zs)//因为是要修改值,所以要传这个引用类型的内存地址
 if err ==nil {
 }
fmt.Println(zs)