Heim > Backend-Entwicklung > Golang > Wie kann man einen Zeitstempel in der Funktion „time.Parse' von Go richtig analysieren?

Wie kann man einen Zeitstempel in der Funktion „time.Parse' von Go richtig analysieren?

Linda Hamilton
Freigeben: 2024-12-11 07:44:13
Original
289 Leute haben es durchsucht

How to Correctly Parse a Timestamp in Go's `time.Parse` Function?

Datumsanalyse in Go

Beim Versuch, einen Zeitstempel im Format „2011-01-19 22:15“ zu analysieren Wird häufig von tar verwendet, können Entwickler bei der Verwendung der Funktion time.Parse auf Schwierigkeiten stoßen. In diesem Artikel soll eine Lösung für dieses Problem bereitgestellt werden.

Der folgende Codeausschnitt zeigt den erfolglosen Versuch, den Zeitstempel mithilfe der Zeit zu analysieren. Parsen:

package main

import (
    "fmt"
    "time"
)

func main() {
    var time, error = time.Parse("2011-01-19 22:15", "2011-01-19 22:15")
    if error != nil {
        fmt.Println(error.String())
        return
    }
    fmt.Println(time)
}
Nach dem Login kopieren

Dieser Code schlägt mit der Fehlermeldung fehl "'Parsing-Zeit "2011-01-19 22:15": Monat aus range'".

Die Lösung liegt im Verständnis der Syntax und Semantik von time.Parse. Wie in der Go-Time-Paketdokumentation angegeben, basiert das in time.Parse verwendete Standardlayout auf dem Standard-Unix-Zeitformat:

"Mon. Jan. 2 15:04:05 MST 2006 (MST ist GMT-0700) „

wo:

  • Mo, 2. Jan., 15. 04, 05 sind die entsprechenden Werte für Monat, Tag, Tag des Monats, Stunde, Minute und Sekunde
  • MST ist der Zeitzonenversatz
  • 2006 ist das Jahr

Um ein benutzerdefiniertes Layout zu definieren, müssen Entwickler festlegen, wie die Standardzeit in ihrem gewünschten Format angezeigt werden soll. Um beispielsweise den Zeitstempel „2011-01-19 22:15“ zu analysieren, kann das folgende Snippet verwendet werden:

package main

import (
    "fmt"
    "time"
)

func main() {
    t, err := time.Parse("2006-01-02 15:04", "2011-01-19 22:15")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(time.SecondsToUTC(t.Seconds()))
}
Nach dem Login kopieren

Hier haben wir eine benutzerdefinierte Layoutzeichenfolge „2006-01-02 15“ angegeben :04", um mit dem Eingabezeitstempel übereinzustimmen. Das Ergebnis wird dann im Unix-Zeitformat gedruckt.

Das obige ist der detaillierte Inhalt vonWie kann man einen Zeitstempel in der Funktion „time.Parse' von Go richtig analysieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage