Avatar ·

Como exibir JSON de forma bonita em Go: formatação conveniente para depuração e logs

Olá a todos! Comecei a estudar Go recentemente e me deparei com um problema ao trabalhar com JSON. Tenho uma struct que serializo em JSON, mas quando exibo o resultado com fmt.Println, tudo aparece em uma única linha sem formatação. Isso é muito inconveniente para depuração, especialmente quando a struct é grande e aninhada. Aqui está um exemplo do meu código: ```go package main import ( "encoding/json" "fmt" ) type User struct { Name string `json:"name"` Age int `json:"age"` Hobbies []string `json:"hobbies"` Address struct { City string `json:"city"` Zip string `json:"zip"` } `json:"address"` } func main() { u := User{ Name: "Alice", Age: 30, Hobbies: []string{"reading", "coding", "hiking"}, } u.Address.City = "Moscow" u.Address.Zip = "101000" data, _ := json.Marshal(u) fmt.Println(string(data)) // Saída: {"name":"Alice","age":30,"hobbies":["reading","coding","hi" }