Golang JSON 反序列化
JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易于人們閱讀和編寫,同時也便于計算機解析和生成。在 Golang 中,處理 JSON 數據非常方便,可以通過簡單的方法對 JSON 進行序列化和反序列化操作。
JSON 編碼和解析是 Go 中的核心概念,內置的 json 包提供了 JSON 數據的編碼和解析功能。其中,json.Unmarshal() 函數用于將 JSON 數據解析成 Go 語言中的結構體或者 map。
代碼示例:
type person struct { Name string `json:"name"` Age int `json:"age"` } func main() { jsonString := `{"name": "Jack", "age": 18}` var p person err := json.Unmarshal([]byte(jsonString), &p) if err != nil { fmt.Println(err) return } fmt.Println(p) }
在代碼中,我們定義了一個 person 結構體,包含了名字和年齡兩個字段。在 main 函數中,我們定義了一個 jsonString 字符串,用于存儲一個 JSON 對象的字符串形式。
接著,我們定義了一個 p 變量,用于存儲解析后的 person 對象。我們通過 json.Unmarshal() 函數將 jsonString 解析成 person 對象,并將其存儲到 p 變量中。
最后,我們輸出了解析后的 person 對象。
總結:
以上就是關于 Golang JSON 反序列化的簡單介紹。通過 json.Unmarshal() 函數,我們可以方便地將 JSON 數據解析成 Golang 對象,進而實現對 JSON 數據的解析和操作。在實際開發中,我們需要根據不同的業務場景,靈活運用 JSON 解析的技術,實現更為靈活和高效的數據處理。