网站设置什么意思如何做网站营销推广
本博文简要介绍go语言结构体如何与json格式化字符串相互转换。
 
文章目录
- go语言结构体转换为json数据
 - json数据转换为go结构体
 
go语言结构体转换为json数据
type Person struct {Name    string   `json:"name"`Age     int      `json:"age"`Hobbies []string `json:"hobbies"`
}
func main() {jsonStringData := `{"name":"Grorge","age":18,"hobbies":["Cycling","Cheese","Techno"]}`jsonByteData := []byte(jsonStringData)p := Person{}err := json.Unmarshal(jsonByteData, &p)if err != nil {log.Fatal(err)}fmt.Printf("%+v\n", p)} 
json数据转换为go结构体
type Person1 struct {Name    string   `json:"name,omitempty"`Age     int      `json:"age,omitempty"`Hobbies []string `json:"hobbies,omitempty"`
}func main2() {hobbies := []string{"Cycling", "Cheese", "Techno"}p := Person1{Name:    "Grorge",Age:     18,Hobbies: hobbies,}fmt.Println(p)jsonByteData, err := json.Marshal(p)if err != nil {log.Fatal(err)}jsonStringData := string(jsonByteData)fmt.Println(jsonStringData)
}