JSON是一種常用的數據格式,通過它我們可以將數據以一種結構化的方式保存和傳輸。在Go語言中,我們可以使用標準庫中的Json包來操作json類型數據。
在Go中,我們可以使用結構體來表示一個json對象。
type Person struct { Name string `json:"name"` Age int `json:"age"` Address string `json:"address"` }
這里,我們使用了Struct來定義了一個Person類型,其中Name,Age和Address分別表示這個Person的姓名,年齡和地址。在結構體的定義中,通過使用json tag來指定json中對象的鍵值。
除此之外,我們還可以使用json.Marshal和json.Unmarshal函數來將Go中定義的結構體與json數據相互轉換。
// 結構體轉json p := Person{Name: "張三", Age: 18, Address: "上海市"} b, _ := json.Marshal(p) // 輸出 {"name":"張三","age":18,"address":"上海市"} // json轉結構體 var p2 Person json.Unmarshal([]byte(`{"name":"李四","age":20,"address":"北京市"}`), &p2) fmt.Println(p2.Name, p2.Age, p2.Address) // 輸出 李四 20 北京市
通過以上代碼,我們可以看到json.Marshall函數可以將定義的結構體p轉換為json字符串,而json.Unmarshal函數則可以將json字符串轉換為定義的結構體p2。
總的來說,Go語言中對json類型的支持非常方便,我們可以很容易地將Go中的結構體轉換為JSON類型,或者將JSON類型轉換為Go中的結構體。
上一篇go json第三方包
下一篇python 散點大小