第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Unmarshall JSON 上的空結(jié)構(gòu)且密鑰未知

Unmarshall JSON 上的空結(jié)構(gòu)且密鑰未知

Go
浮云間 2023-08-07 15:21:47
我從 API 獲取如下 JSON:{  "unknownkey" : {    "sum" : 7030.76636,    "low" : 6787.05692,    "avg" : 0.00014  }}第一個(gè)鍵是未知的 - 它會(huì)改變,但內(nèi)部結(jié)構(gòu)始終保留相同的鍵。根據(jù)這里的討論,我創(chuàng)建了這些structs:type Order struct {  Result Result `json:"-"`}type Result struct {  Sum        float64    `json:"sum"`  Low        float64    `json:"low"`  Avg        float64      `json:"avg"`}我嘗試像這樣解組它:var order Orderjson.Unmarshal([]byte(body), &order)但我只是得到一個(gè)空結(jié)構(gòu):{Result:{Sum:0 Low:0 Avg:0}}
查看完整描述

1 回答

?
慕絲7291255

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊

Result您可以使用值類(lèi)型為或 的映射*Result:


var wrapper map[string]Result


if err := json.Unmarshal([]byte(body), &wrapper); err != nil {

    panic(err)

}


fmt.Printf("%+v\n", wrapper)

這將導(dǎo)致:


map[unknownkey:{Sum:7030.76636 Low:6787.05692 Avg:0.00014}]

如果您需要該Result對(duì)象,請(qǐng)?jiān)诘貓D上范圍:


for key, result := range wrapper {

    fmt.Printf("Key: %q, Result: %+v", key, result)

}

這輸出:


Key: "unknownkey", Result: {Sum:7030.76636 Low:6787.05692 Avg:0.00014}

嘗試Go Playground上的示例。



查看完整回答
反對(duì) 回復(fù) 2023-08-07
  • 1 回答
  • 0 關(guān)注
  • 180 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)