Golang 是一種靜態類型的編程語言,具有高效性、簡潔性、并發性和安全性等優勢。在 Golang 中,提供了方便快捷的 JSON 解析庫,能夠幫助我們快速地把 JSON 字符串轉換為 Go 對象,并且也能夠將 Go 對象序列化成 JSON 字符串,非常方便。
// 定義一個結構體 type User struct { Name string `json:"name"` Age int `json:"age"` Address string `json:"address"` } // 將結構體轉換為 JSON 字符串 func (u *User) ToJSON() ([]byte, error) { return json.Marshal(u) } // 將 JSON 字符串轉換為結構體 func (u *User) FromJSON(data []byte) error { return json.Unmarshal(data, u) } func main() { // 創建一個 User 對象 user := &User{ Name: "Tom", Age: 18, Address: "Beijing", } // 將 User 對象序列化成 JSON 字符串 jsonString, err := user.ToJSON() if err != nil { fmt.Println("ToJSON error:", err) return } fmt.Println("JsonString:", string(jsonString)) // 將 JSON 字符串反序列化成 User 對象 newUser := &User{} err = newUser.FromJSON(jsonString) if err != nil { fmt.Println("FromJSON error:", err) return } fmt.Println("NewUser:", newUser) }
通過上面的代碼,我們可以看到使用 Golang 實現 JSON 的過程非常簡單,只需要定義一個結構體,然后調用 json.Marshal 將結構體序列化成 JSON 字符串,反之調用 json.Unmarshal 將 JSON 字符串反序列化成結構體即可。