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

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

解組 []string 中的 []byte json 數(shù)據(jù)

解組 []string 中的 []byte json 數(shù)據(jù)

Go
青春有我 2022-04-26 14:35:09
我想要什么:“逐行”比較兩個(gè) json 文件(下面有更多解釋)。json 文件的樣子:{    "key": {},    "key2": {},    "key3": "val",    "key4": [],    "key5": [        "k": {}    ]}一般來(lái)說(shuō),我不知道實(shí)際的 JSON 結(jié)構(gòu)。假設(shè)我有兩個(gè)縮進(jìn)的 json 文件。在“逐行”比較下,我的意思是我想知道,第 2 行1.json和第 2 行2.json不相等。1.json:1 {2     "k": "val"3 }2.json:1 {2     "k": "vaaaaal"3 }我的問(wèn)題是我無(wú)法將 json 直接解組為[]string.初始 json 數(shù)據(jù)存儲(chǔ)在[]byte,我使用Downloaded從 AWS S3 獲取它,jsonData變量是WriteAtBuffer的對(duì)象目前我只能將 json 解組為map[string]interface{}or interface{},但很難轉(zhuǎn)換map[string]interface{}為[]string.
查看完整描述

2 回答

?
有只小跳蛙

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

到目前為止,我已經(jīng)采用了這種方法,但我不確定它是否是最好的。


var out bytes.Buffer

err := json.Indent(&out, jsonData.Bytes(), "", "  ")

if err != nil {

    log.Fatal(err)

}

outStr := out.String()

slice := strings.Split(outStr,"\n")


查看完整回答
反對(duì) 回復(fù) 2022-04-26
?
梵蒂岡之花

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

如果我理解正確,您想比較確切字段的匹配。所以你可以嘗試使用map[string]string{}


這是一個(gè)例子


   var jsonMap = map[string]string{}

   var json = []byte

   json = // get your json bytes here

   json.Unmarshal(json, &jsonMap)


   // Access your field's value

   fmt.Println(jsonMap["key"]) 


   // If you want slice, convert values from map to string slice

   slice := mapToSlice(jsonMap) 


   func mapToSlice(jsonMap map[string]string) []string {

       slice := make([]string)

       for _, value := range jsonMap {

          slice = append(slice, value)

       }

       return slice

   }


查看完整回答
反對(duì) 回復(fù) 2022-04-26
  • 2 回答
  • 0 關(guān)注
  • 154 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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