如何在Go中美化JSON:详细指南
你好!我是Go新手,正在做一个需要以可读形式输出JSON的项目。我有一个数据结构,使用`json.Marshal()`将其序列化为JSON,但输出结果是一行字符串,没有缩进和换行。这对调试和日志记录非常不方便。
这是我的代码:
```go
package main
import (
"encoding/json"
"fmt"
)
type User struct {
Name string
Age int
Email string
Address Address
}
type Address struct {
City string
Country string
}
func main() {
user := User{
Name: "伊万·伊万诺夫",
Age: 30,
Email: "ivan@example.com",
Address: Address{
City: "莫斯科",
Country: "俄罗斯",
},
}
jsonData, err := json.Marshal(user)
if err != nil {
fmt.Println("错误:", err)
return
}
fmt.Println(string(jsonData))
}
```
结果:`{"Name":"伊万·伊万诺夫","Age":30,"Email":"ivan