2 回答
TA贡献1828条经验 获得超4个赞
把水果放在篮子里。
预期输出和实际输出之间的区别在于数组在预期输出中用对象包装。修改相应的 Go 类型以匹配预期输出的结构。
var data = struct{ Basket []Fruit }{Basket: fruits}
dat, err := json.MarshalIndent(&data, "", " ")
https://play.golang.org/p/7g9HDZ38XxU
或者,更改现有Basket类型以匹配 JSON 并使用它:
type Basket struct {
Basket []Fruit
}
...
dat, err := json.MarshalIndent(&Basket{Basket:fruit}, "", " ")
TA贡献1811条经验 获得超6个赞
在您的 printJSON 函数中,您只是打印出篮子里的水果幻灯片。创建和打印篮子结构并向字段篮子添加 JSON 标记可实现您想要的:
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 关注
- 136 浏览
添加回答
举报