Avatar ·

Cómo convertir Unix timestamp a time.Time en Go?

¡Hola a todos! Acabo de empezar a estudiar Go y me encontré con un problema al trabajar con el tiempo. Tengo una API que devuelve el tiempo en formato Unix timestamp (por ejemplo, 1696425600). Necesito convertir este número en un objeto time.Time para luego formatearlo y mostrarlo al usuario en un formato legible, como "2023-10-04 15:20:00".

Probé varios enfoques, pero nada funciona. Esto es lo que intenté hacer:

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := int64(1696425600)
    
    // Primer intento - simplemente asignar
    // t := time.Time(timestamp) // Error: cannot convert timestamp to time.Time
    
    // Segundo intento - usando Parse
    // t, _ := time.Parse("Unix timestamp", string(timestamp)) // Tampoco funciona
    
    // Tercer intento - usando UnixDate
    // t, _ := time.Parse(time.UnixDate, string(timestamp)) // Error de formato
    
    fmt.Println("No m