Go 是一門流行的編程語言,它在處理 JSON 數(shù)據(jù)方面非常有優(yōu)勢。Go 有內(nèi)置的 JSON 庫能幫助我們快速地序列化和反序列化 JSON 數(shù)據(jù)。以下是如何在 Go 中使用最簡單的 JSON 庫。
package main import ( "encoding/json" "fmt" ) func main() { // 定義一個 JSON 字符串 jsonData := `{ "name": "Alice", "age": 25, "hobbies": ["reading", "swimming"] }` // 定義一個結(jié)構(gòu)體 type Person struct { Name string `json:"name"` Age int `json:"age"` Hobbies []string `json:"hobbies"` } // 解析 JSON 數(shù)據(jù)到結(jié)構(gòu)體 var person Person err := json.Unmarshal([]byte(jsonData), &person) if err != nil { panic(err) } // 打印解析后的結(jié)構(gòu)體 fmt.Printf("%+v", person) // 將結(jié)構(gòu)體轉(zhuǎn)換成 JSON 字符串 jsonBytes, err := json.Marshal(person) if err != nil { panic(err) } // 打印 JSON 字符串 fmt.Println(string(jsonBytes)) }
以上代碼定義了一個 JSON 字符串,然后定義了一個與 JSON 字符串相對應的結(jié)構(gòu)體,最后使用 json.Unmarshal() 方法解析 JSON 數(shù)據(jù)到結(jié)構(gòu)體中。我們可以將解析后的結(jié)構(gòu)體進行打印輸出,或者使用 json.Marshal() 方法將結(jié)構(gòu)體轉(zhuǎn)換成 JSON 字符串。
總之,使用 Go 處理 JSON 數(shù)據(jù)非常方便,只需要簡單地導入內(nèi)置 JSON 庫,就可以快速完成 JSON 數(shù)據(jù)的序列化和反序列化。
上一篇mysql前端頁面
下一篇vue callhook