Go語言提供了快速輕便的解析JSON數據的能力。這篇文章將教你如何使用Go語言解析JSON數據,并提取出其中的值。
// JSON字符串
jsonStr := `{"name": "小明", "age": 18, "gender": "男"}`
// 解析JSON字符串
var m map[string]interface{}
err := json.Unmarshal([]byte(jsonStr), &m)
if err != nil {
log.Fatalln(err)
}
// 獲取值
name := m["name"].(string)
age := m["age"].(float64)
gender := m["gender"].(string)
fmt.Printf("姓名:%s\n年齡:%d\n性別:%s\n", name, int(age), gender)
在這個例子中,首先我們定義了一個JSON字符串,然后使用json.Unmarshal()
函數將其解析為一個映射類型m
。接下來,我們從映射中提取了name
、age
和gender
的值,并將它們分別存儲在變量中。最后,我們打印出這些值。
需要注意的是,m
變量的類型是映射類型。在Go中,映射是鍵值對的集合。在這個例子中,鍵是字符串類型,值是interface{}
類型。這意味著我們可以使用類型斷言將值轉換為具體類型。在這里,我們將age
字段轉換為float64
類型并且將其強制轉換為int
類型。
最后,需要記住的是,在解析JSON時,我們必須嚴格遵守JSON語法。否則,解析過程將會失敗。