Como exibir uma struct no console em Go: análise completa das formas
Olá a todos! Comecei a estudar Go recentemente e me deparei com o seguinte problema: tenho uma struct que descreve, por exemplo, um usuário:
```go
type User struct {
Name string
Age int
Email string
}
```
Crio uma instância dessa struct:
```go
user := User{Name: "Ivan", Age: 30, Email: "ivan@example.com"}
```
E tento exibi-la no console com `fmt.Println(user)` ou `fmt.Printf("%v", user)`. Como resultado, vejo algo como `{Ivan 30 ivan@example.com}` — isso é melhor que nada, mas não é nada legível. Especialmente se houver muitos campos ou a struct for aninhada.
O que eu quero:
1. Ver os nomes dos campos (Name, Age, Email) na saída.
2. Que a struct seja exibida de forma legível, possivelmente com indentação.
3. Que funcione para qualquer struct, não apenas para a minha.
Tentei `fmt.Printf("%+v", user)` — isso mostra os nomes dos campos, mas ainda em uma única linha. Para structs complexas, isso é inconveniente. Digam-me, quais são as formas em Go para exibir structs de maneira bonita?
No answers yet.
Faça login para deixar uma resposta