func main() { a := []byte(`{"Parents": [ "aaaaa", "bbbbbbb" ]}`) b := []byte(`{"Parents": [ "Gomez", "Moticia" ]}`) var arr []interface{} js, _ := simplejson.NewJson(a) nodes, _ := js.Map() p := nodes["Parents"] d := p.([]interface{}) for _, v := range d { arr = append(arr, v) } js, _ = simplejson.NewJson(b) nodes, _ = js.Map() p = nodes["Parents"] d = p.([]interface{}) for _, v := range d { arr = append(arr, v) } res := make(map[string]interface{}) res["Parents"] = arr c, _ := json.Marshal(res) fmt.Println(string(c)) }
結(jié)果:
{“Parents”:[“aaaaa”,”bbbbbbb”,”Gomez”,”Moticia”]}
相應(yīng)的,如果數(shù)組里面是interface類型同樣適用。
補(bǔ)充:go實(shí)現(xiàn)json數(shù)組嵌套
引用包 “encoding/json"
type person struct { Name string `json:"name"` Sex string `json:"sex"` Age string `json:"age"` }
type test struct { Class int `json:"class"` Person []person `json:"person"` }
class6 := `{ "class":6, "person":[{ "name":"wangha", "sex":"male", "age":"18" }, { "name":"zhang", "sex":"female", "age":"16" }] }`
var keys test if err := json.Unmarshal([]byte(class6), keys);err != nil{ fmt.Println(err) }else { fmt.Printf("%+v\n", keys) fmt.Printf("%+v\n", keys.Person[1]) fmt.Printf("%s\n", keys.Person[0].Sex) }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
標(biāo)簽:雞西 吐魯番 銅川 欽州 重慶 汕頭 梅河口 蘭州
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《golang json數(shù)組拼接的實(shí)例》,本文關(guān)鍵詞 golang,json,數(shù)組,拼接,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。