Avatar ·

Como converter time.Time para string em Go? (formatação de data e hora)

Olá a todos! Comecei a estudar Go recentemente e tive um problema com a conversão de tempo para string. Preciso exibir a data e hora atual no formato "2024-12-25 14:30:00" (como no MySQL), mas não entendo como fazer isso corretamente. Tentei usar o método padrão `String()` de `time.Time`, mas ele exibe algo como "2024-12-25 14:30:00 +0000 UTC", enquanto eu preciso apenas de ano-mês-dia horas:minutos:segundos. Além disso, ouvi dizer que em Go existe um formato "mágico" com o número 2006-01-02, mas isso parece estranho. Aqui está meu código: ```go package main import ( "fmt" "time" ) func main() { now := time.Now() fmt.Println("Agora:", now.String()) // exibe o que não é necessário } ``` Por favor, me digam como formatar corretamente o tempo para string? E por que em Go é usado esse formato estranho com o ano 2006? Ficarei grato por exemplos. <<>>

Solução principal: método Format() e a data "mágica"

Em Go, para converter time.Time em