2 回答

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊
要?jiǎng)?chuàng)建 through map 數(shù)組JSON,您需要?jiǎng)?chuàng)建一個(gè)map作為slice單個(gè) map 而另一個(gè)只是單個(gè) map,然后在單個(gè) map 中一個(gè)一個(gè)地賦值,然后將其附加到 slice of map 中,如下面的代碼所示:
package main
import (
"fmt"
"encoding/json"
)
func main(){
id := [5]string{"1","2","3","4","5"}
name := [5]string{"A","B","C","D","E"}
parseData := make([]map[string]interface{}, 0, 0)
for counter,_ := range id {
var singleMap = make(map[string]interface{})
singleMap["id"] = id[counter]
singleMap["name"] = name[counter]
parseData = append(parseData, singleMap)
}
b, _:= json.Marshal(parseData)
fmt.Println(string(b))
}
你也可以在這里測(cè)試
它打印JSON
為:
[{"id":"1","name":"A"},
{"id":"2","name":"B"},
{"id":"3","name":"C"},
{"id":"4","name":"D"},
{"id":"5","name":"E"}]

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
對(duì)我來(lái)說(shuō),這更像是一組對(duì)象。您可以像這樣獲得所需的輸出:
type data struct {
Id string
Name string
}
func main(){
id := [5]string{"1","2","3","4","5"}
name := [5]string{"A","B","C","D","E"}
var parsedData []data
for counter := range id {
parsedData = append(parsedData, data{Name: name[counter], Id: id[counter]})
}
bytes, _ := json.Marshal(parsedData)
fmt.Print(string(bytes))
}
輸出應(yīng)如下所示:
[
{"Id":"1","Name":"A"},
{"Id":"2","Name":"B"},
{"Id":"3","Name":"C"},
{"Id":"4","Name":"D"},
{"Id":"5","Name":"E"}
]
- 2 回答
- 0 關(guān)注
- 162 瀏覽
添加回答
舉報(bào)