Это правильно. Существует такое время, как 2:00 (или 3) CEST. Европа / Париж содержит две часовые пояса, CET и CEST. Они всегда находятся на расстоянии одного часа и являются смежными (смещение UTC часового пояса никогда не меняется, календарь переключает часовые пояса).
Также обратите внимание, что падение назад происходит в 3 часа утра, а не в 1 час утра! Если вы измените свое время на 3, вы должны увидеть, что оно переворачивается в другую сторону, где разбирается 3:00 input дает выход 3: 00CET, но анализирует вход 3: 00CEST, как и ожидалось, вывод 2: 00CET.
В 3 часа ночи в Париже текущее время меняется с 3:00 CEST на 2:00 CET. Если вы укажете 28 октября 2012 г. 3:00 CEST в качестве входных данных, в конечном итоге будет выведено 2:00 AM CET, то есть тот же фактический момент времени, потому что так говорят часы на парижской стене!
-
Я думаю, что существует некоторая путаница в отношении "человеческого" значения CET против значения машины. Для человека «CET» для Парижа означает «Место, которое составляет +1 час UTC зимой и +2 часа UTC летом». Однако, когда вы видите вывод, напечатанный парсером, CET означает +1 час, всегда. Поэтому, когда вы печатаете парижское время, которое происходит перед «первым» 3:00 утра 10/28, парсер будет выводить его как CEST. Когда вы печатаете парижское время, которое происходит после «первого» 3 утра 28 октября, оно будет показывать CET.
Во время перехода на летнее время парижане будут испытывать как 02:59 CET (машинное значение), так и 02:59 CEST, а не «02:59 CET дважды», что может быть более понятным для человека. Они оба действительные времена, которые существуют.