使用JSON 套件解析Go 中的JSON 陣列
問題:如何解析表示一個JSON 字串中JSON使用json 套件實現數組?
程式碼範例:
考慮以下Go 程式碼:
type JsonType struct { Array []string } func main() { dataJson := `["1", "2", "3"]` arr := JsonType{} unmarshaled := json.Unmarshal([]byte(dataJson), &arr.Array) log.Printf("Unmarshaled: %v", unmarshaled) }
解釋:
提供:提供:
err := json.Unmarshal([]byte(dataJson), &arr)
提供的程式碼定義了一個帶有陣列的JsonType 類型字串。然後,它嘗試將 JSON 字串解組到 JsonType 實例的陣列欄位中。不過代碼有問題。
var arr []string _ = json.Unmarshal([]byte(dataJson), &arr)
解決方案:
Unmarshal 的回傳值是個錯誤。程式碼最初會列印此錯誤而不是未編組的陣列。要修復它,您可以將程式碼變更為:此外,您可以透過直接解組到陣列切片來簡化程式碼,而不使用自訂類型:這個代碼將未編組的切片分配給arr。賦值前的底線抑制了錯誤值,本程式碼中沒有使用。 透過有效使用 json 套件,您可以輕鬆地在 Go 中解析 JSON 陣列。以上是如何使用 json 套件解析 Go 中的 JSON 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!