色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

golang json轉map

錢淋西2年前7瀏覽0評論

在golang中,處理JSON數據是一項常見的任務。當然,在某些情況下,您可能需要將JSON轉換為map。幸運的是,golang中有幾種不同的方法可以執行此操作。

以下是JSON轉換為map的示例代碼:

func main() {
jsonStr := `{"name":"John", "age":30, "city":"New York"}`
var m map[string]interface{}
err := json.Unmarshal([]byte(jsonStr), &m)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(m)
}

在上面的示例中,我們首先定義了一個JSON字符串,然后定義了一個名為m的map變量。我們使用json.Unmarshal()進行轉換。請注意,第二個參數必須是一個指向map的指針。

如果您希望將JSON字符串轉換為具有確定類型的map,則可以使用struct:

type Person struct {
Name string `json:"name"`
Age int `json:"age"`
City string `json:"city"`
}
func main() {
jsonStr := `{"name":"John", "age":30, "city":"New York"}`
var p Person
err := json.Unmarshal([]byte(jsonStr), &p)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(p.Name)
fmt.Println(p.Age)
fmt.Println(p.City)
}

在上面的示例中,我們定義了一個結構體Person,然后使用json.Unmarshal()將JSON字符串解碼為該類型的變量p。請注意,結構體標記指示JSON中的每個字段的名稱。

以上是JSON轉換為map的兩種常見方法。根據您的特定用例,您可能會選擇一種方法而不是另一種方法。無論您選擇哪種方法,golang的JSON轉換功能都提供了許多選項,以滿足幾乎所有需求。