我可以使用下面的代码很好地缩进我的JSON,它打印出类似于第一个输出的东西。但我希望输出用数组括起来并正确缩进,就像在第二个输出中一样。
j, err := json.MarshalIndent(x, "", " ")
if err != nil {
fmt.Println(err)
} else {
fmt.Println(string(j))
}
{
"A" : "x",
"B" : "y",
"C" : [
{
"A" ...
}
]
}
喜欢这样。
[
{
"A" : "x",
"B" : "y",
"C" : [
{
"A" ...
}
]
}
]
答案 0 :(得分:1)
将变量x
包装在单个元素切片中。切片被编码为JSON数组(使用方括号):
j, err := json.MarshalIndent([]interface{}{x}, "", " ")