2 回答

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超4個(gè)贊
把水果放在籃子里。
預(yù)期輸出和實(shí)際輸出之間的區(qū)別在于數(shù)組在預(yù)期輸出中用對(duì)象包裝。修改相應(yīng)的 Go 類型以匹配預(yù)期輸出的結(jié)構(gòu)。
var data = struct{ Basket []Fruit }{Basket: fruits}
dat, err := json.MarshalIndent(&data, "", " ")
https://play.golang.org/p/7g9HDZ38XxU
或者,更改現(xiàn)有Basket類型以匹配 JSON 并使用它:
type Basket struct {
Basket []Fruit
}
...
dat, err := json.MarshalIndent(&Basket{Basket:fruit}, "", " ")

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超6個(gè)贊
在您的 printJSON 函數(shù)中,您只是打印出籃子里的水果幻燈片。創(chuàng)建和打印籃子結(jié)構(gòu)并向字段籃子添加 JSON 標(biāo)記可實(shí)現(xiàn)您想要的:
https://play.golang.org/p/aJcbP97CDGt
type Basket struct {
Fruits []Fruit `json:"Basket"`
}
// Prints the output in JSON format.
func printJSON() {
dat, err := json.MarshalIndent(Basket{fruits}, "", " ")
if err != nil {
fmt.Println(err)
}
fmt.Println("This is printJSON().")
fmt.Println(string(dat))
}
- 2 回答
- 0 關(guān)注
- 224 瀏覽
添加回答
舉報(bào)