SimpleDateFormat Ausnahme beim Setzen von "lenient" auf "false"

8

Warum löst dieser Code eine Ausnahme aus, die nicht zu ermitteln ist?

%Vor%

Es funktioniert gut, wenn Nachsichtigkeit wahr ist. Seltsamerweise funktioniert das Eingabedatum ' 2012-03-01T02: 46: 01.000Z sogar mit Nachsicht als falsch. Standardzeitzone wird verwendet: PST

    
RandomQuestion 29.01.2013, 01:16
quelle

1 Antwort

10

Da diese Zeit in Ihrer Standardzeitzone nicht vorhanden ist, wurde der Sommerzeitumstellungstag geändert, und die Zeit sprang von 2:00 Uhr morgens auf 3:00 Uhr morgens, so dass es an diesem Morgen keine 2:46 Uhr gab. : P

Da Sie UTC analysieren, legen Sie die Zeitzone SimpleDateFormat der Instanz wie folgt auf UTC fest:

%Vor%

und Ihr Problem wird verschwinden.

    
andrewdotn 29.01.2013, 01:38
quelle

Tags und Links