Antworten:
Verwenden Sie die time.Now()Funktion und die time.Format()Methode.
t := time.Now()
fmt.Println(t.Format("20060102150405"))
druckt aus 20110504111515, oder zumindest vor ein paar Minuten. (Ich bin auf Eastern Daylight Time.) In den im Zeitpaket definierten Konstanten gibt es mehrere vordefinierte Zeitformate.
Sie können verwenden, time.Now().UTC()wenn Sie lieber UTC als Ihre lokale Zeitzone haben möchten.
KitchenKonstante ( = "3:04PM")
Alle anderen Antworten sind für jemanden, der von Google kommt und nach "timestamp in go" sucht, sehr falsch! YYYYMMDDhhmmss ist kein "Zeitstempel".
Um den "Zeitstempel" eines Datums zu erhalten (Anzahl der Sekunden ab Januar 1970), lautet die korrekte Funktion .Unix () und gibt wirklich eine Ganzzahl zurück
Get current time as formatted string in Go?. Hoffentlich wird es jemand genehmigen.
Verwenden Sie zur besseren Lesbarkeit am besten die RFC-Konstanten im Zeitpaket (ich denke)
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
Verwenden Sie die Funktionen time.Now () und time.Format () (da time.LocalTime () ab Go 1.0.3 nicht mehr vorhanden ist).
t := time.Now()
fmt.Println(t.Format("20060102150405"))
Online-Demo (mit Datum in der Vergangenheit auf dem Spielplatz festgelegt, egal)
s := "Actual time is: "+time.Now().String()
Weitere Informationen finden Sie in diesem Beitrag: Aktuelles Datum und Uhrzeit in verschiedenen Formaten in Golang abrufen
Dies ist ein Vorgeschmack auf die verschiedenen Formate, die Sie im vorherigen Beitrag finden:
Als Echo auf die Antwort von @ Bactisme lautet die Vorgehensweise zum Abrufen des aktuellen Zeitstempels (z. B. in Millisekunden):
msec := time.Now().UnixNano() / 1000000
Ressource: https://gobyexample.com/epoch
https://golang.org/src/time/format.go angegeben Für die Analyse wird die Zeit 15für Stunden verwendet, 04wird für Minuten verwendet,05 für Sekunden verwendet.
Für Datum Parsen 11, Jan, Januaryist seit Monaten 02, Mon, Mondayfür Tag des Monats, 2006des Jahres und natürlichMST für die Zone
Sie können aber auch dieses Layout verwenden, was ich sehr einfach finde. "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