首頁 > 後端開發 > Golang > 如何在 Go 中解組未知的 JSON 資料結構?

如何在 Go 中解組未知的 JSON 資料結構?

Susan Sarandon
發布: 2024-11-26 01:15:15
原創
538 人瀏覽過

How to Unmarshal Unknown JSON Data Structures in Go?

解組未知格式的JSON 資料

提供的JSON 遵循特定模式:

{
SUBJECT1: [{Student_Name1: Grade, Student_Name2: Grade, ... , Student_Name3: Grade, timestamp: Timestamp(...)}],
SUBJECT2: [{Student_Name4: Grade, Student_Name6: Grade, ... , Student_Name5: Grade, timestamp: Timestamp(...)}]
...
SUBJECTN: [{Student_Name1: Grade, Student_Name6: Grade, ... , Student_Name9: Grade, timestamp: Timestamp(...)}]
}
登入後複製

提供的JSON 遵循特定模式:

提供的JSON 遵循特定模式:

提供的JSON 遵循特定模式:

提供的JSON 遵循特定模式:

目標:

將JSON 解組為GoLang 結構,以JSON形式回傳
var grades map[string]interface{}
err := json.Unmarshal([]byte(jsonString), &grades)
fmt.Println(err)
fmt.Printf("%#v\n", grades)
登入後複製

解:

選項 1:使用 map[string] 介面{}
type GradeData struct {
    Grades map[string]interface{} `json:"-"`
}

err := json.Unmarshal([]byte(jsonString), &gradesData.Grades)
fmt.Println(err)
fmt.Printf("%#v\n", gradesData)
登入後複製
因為 JSON鍵是未知,我們可以使用map[string]interface{}來解組選項2:使用結構如果需要結構,請使用json :"-" 標記在JSON 編組期間忽略字段/正在解組。

以上是如何在 Go 中解組未知的 JSON 資料結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板