1、結(jié)構(gòu)體轉(zhuǎn)為json對象
? ? v, _ := json.Marshal(student)
? ? jsonStr := string(v) // 結(jié)構(gòu)體轉(zhuǎn)為json對象
2、json字符串轉(zhuǎn)為結(jié)構(gòu)體
? ? var s1 Student
? ? err := json.Unmarshal([]byte(str), &s1) //json 字符串轉(zhuǎn)為結(jié)構(gòu)體
?文章來源地址http://www.zghlxwxcb.cn/news/detail-816402.html
?3、結(jié)構(gòu)體標簽
表示的是轉(zhuǎn)換為json對象時,ID字段變?yōu)閕d,Name字段變?yōu)閚ame.
type Student struct {
? ? ID ? int ? ?`json:"id"`
? ? Name string `json:"name"`
? ? // name string ?小寫表示是私有變量,不能被json包訪問
}文章來源:http://www.zghlxwxcb.cn/news/detail-816402.html
?
type Student struct {
ID int `json:"id"`
Name string `json:"name"`
// name string 小寫表示是私有變量,不能被json包訪問
}
func main() {
var student = Student{
ID: 123,
Name: "wei",
}
fmt.Println(student)
v, _ := json.Marshal(student)
jsonStr := string(v) // 結(jié)構(gòu)體轉(zhuǎn)為json對象
fmt.Printf("%v\n", jsonStr)
str := `{"ID":123,"Name":"wei"}`
var s1 Student
err := json.Unmarshal([]byte(str), &s1) //json 字符串轉(zhuǎn)為結(jié)構(gòu)體
if err != nil {
fmt.Println(err)
}
fmt.Printf("%#v", s1)
}
到了這里,關于golang學習-golang結(jié)構(gòu)體和Json相互轉(zhuǎn)換的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!