Rozważmy następujący przykład:Dlaczego nie można przeanalizować czasu reprezentowanego przez dostarczone formaty?
package main
import (
"fmt"
"time"
)
func main() {
fmt.Println(time.Parse(time.RFC3339, time.RFC3339))
}
wyjście jest:
0001-01-01 00:00:00 +0000 UTC parsing time "2006-01-02T15:04:05Z07:00": extra text: 07:00
Dlaczego nie time.Parse() obsłużyć układ jako wartość? Czego tu brakuje?
UPDATE: Odcięcie wartość strefy czasowej (ale nie 'Z' ograniczającej czas od strefy) rozwiązuje go:
fmt.Println(time.Parse(time.RFC3339, "2015-09-15T11:50:00Z"))
Dlaczego nie time.Parse() obsługiwać informacje o strefie czasowej podczas używania time.RFC3339 jako ciągu układu?
http://play.golang.org/p/p3fHfJNHVK
UPDATE: odpowiedź JimB doprowadziły mnie do zapoznania się z RFC3339 i znalazłem te przykłady, które wyjaśniają dalej:
Oto kilka przykładów z datą Internet/format czasu.
1985-04-12T23:20:50.52Z
Stanowi to 20 minut i 50.52 sekund po 23 godzinie 12 kwietnia 1985 roku w UTC.
1996-12-19T16:39:57-08:00
Stanowi to 39 minuty i 57 sekund po 16 godzinie 19 grudnia 1996 roku z przesunięciem -08: 00 z UTC (Pacific Standardowy czas). Zauważ, że jest to odpowiednik
1996-12-20T00:39:57Z
w UTC.
Czy to pomocne? https://github.com/golang/go/issues/9346 –
Tak, to było pomocne. Dzięki! – mdwhatcott