Réponses:
Utilisez la time.Now()
fonction et la time.Format()
méthode.
t := time.Now()
fmt.Println(t.Format("20060102150405"))
imprime 20110504111515
, ou du moins il l'a fait il y a quelques minutes. (Je suis à l'heure avancée de l'Est.) Il existe plusieurs formats d'heure prédéfinis dans les constantes définies dans le package horaire.
Vous pouvez utiliser time.Now().UTC()
si vous préférez avoir UTC plutôt que votre fuseau horaire local.
Kitchen
constante ( = "3:04PM"
)
Toutes les autres réponses sont très mal dirigées pour quelqu'un venant de Google et recherchant "horodatage en cours"! AAAAMMJJhhmmss n'est pas un "horodatage".
Pour obtenir le "timestamp" d'une date in go (nombre de secondes à partir de janvier 1970), la fonction correcte est .Unix () , et elle renvoie vraiment un entier
Get current time as formatted string in Go?
. J'espère que quelqu'un l'approuvera.
Pour la lisibilité, il est préférable d'utiliser les constantes RFC dans le package de temps (je pense)
import "fmt"
import "time"
func main() {
fmt.Println(time.Now().Format(time.RFC850))
}
Tuesday, 10-Nov-09 23:00:00 UTC
RFC3339 = "2006-01-02T15:04:05Z07:00"
play.golang.org/p/XmobwWSz5pN golang.org/pkg/time
Utilisez les fonctions time.Now () et time.Format () (car time.LocalTime () n'existe plus depuis Go 1.0.3)
t := time.Now()
fmt.Println(t.Format("20060102150405"))
Démo en ligne (avec date fixée dans le passé dans le terrain de jeu, peu importe)
s := "Actual time is: "+time.Now().String()
Trouvez plus d'informations dans cet article: Obtenez la date et l'heure actuelles dans différents formats en golang
Voici un avant-goût des différents formats que vous trouverez dans l'article précédent:
En écho à la réponse de @ Bactisme, la façon dont on procéderait pour récupérer l'horodatage actuel (en millisecondes, par exemple) est:
msec := time.Now().UnixNano() / 1000000
Ressource: https://gobyexample.com/epoch
https://golang.org/src/time/format.go spécifié Pour l'analyse, le temps 15
est utilisé pour les heures, 04
est utilisé pour les minutes, 05
pour les secondes.
Pour l' analyse syntaxique date 11
, Jan
, January
est depuis des mois, 02
, Mon
, Monday
pour le jour du mois, 2006
pour l' année et bien sûr MST
pour la zone
Mais vous pouvez également utiliser cette disposition, que je trouve très simple. "Mon Jan 2 15:04:05 MST 2006"
const layout = "Mon Jan 2 15:04:05 MST 2006"
userTimeString := "Fri Dec 6 13:05:05 CET 2019"
t, _ := time.Parse(layout, userTimeString)
fmt.Println("Server: ", t.Format(time.RFC850))
//Server: Friday, 06-Dec-19 13:05:05 CET
mumbai, _ := time.LoadLocation("Asia/Kolkata")
mumbaiTime := t.In(mumbai)
fmt.Println("Mumbai: ", mumbaiTime.Format(time.RFC850))
//Mumbai: Friday, 06-Dec-19 18:35:05 IST