Ich weiß, dass am 26. Oktober 2014 02.00 Uhr sollte die Uhr rückwärts 1 Stunde gehen, aber ich kann dies ein einfaches golang Programmgolang Zeitzone Sommerzeit nicht
const timeFormat = "2 Jan, 2006 3:04pm"
loc, err := time.LoadLocation("Europe/Moscow")
log.Print(loc, err)
testz , _ := time.ParseInLocation(timeFormat, "26 Oct, 2014 01:59am", loc)
fmt.Println(testz , testz.UTC())
testz = testz.Add(time.Minute)
fmt.Println(testz , testz.UTC())
testz = testz.Add(time.Minute)
fmt.Println(testz , testz.UTC())
nicht reproduzieren Ausgänge
2014-10-26 01:59:00 +0300 MSK 2014-10-25 22:59:00 +0000 UTC
2014-10-26 02:00:00 +0300 MSK 2014-10-25 23:00:00 +0000 UTC
2014-10-26 02:01:00 +0300 MSK 2014-10-25 23:01:00 +0000 UTC
gehen 1.6, linux
Nur überprüft, zeigt es 0:59, 1:00, 1:01 aber in +0400 MSK Zeitzone ... Und ich verstehe es nicht ... Diesmal ('2014-10-26 02:00:00 +0300 MSK 2014-10-25 23:00:00 +0000 UTC ') und jede weitere innerhalb dieser Stunde ab der ersten Ausgabe ist technisch überhaupt nicht möglich, da Uhren verschoben wurden und diese Stunde übersprungen werden sollte – let4be
@ let4be: Are Bist du sicher, dass du den 'Add (time.Hour)' Teil beigefügt hast? Es hört sich so an. Vergiss nicht, dass die Stunde nicht übersprungen wird - es wird * wiederholt *. Ich denke, Sie haben sich vielleicht über die Art der Veränderung verwirrt, die das ist. –
@ let4be: Ich installiere Go jetzt, damit ich es selbst ausprobieren kann :) –