Правила для летнего времени в Бразилии были изменены, но эти новые правила отсутствуют в последней версии Java.
В этом тестовом коде с использованием последней версии, предоставленной RedHat (java-1.8.0-openjdk-1.8.0.212-3), результаты не ожидаются:
try {
final SimpleDateFormat parser = new SimpleDateFormat( "dd/MM/yyyy" );
final Date date = parser.parse( "05/12/2019" ); // 5th of december
System.out.println( "Is in Daylight Saving Time in this time zone? "
+ TimeZone.getTimeZone( "America/Sao_Paulo" ).inDaylightTime( date ) );
} catch ( ParseException exception ) {
exception.printStackTrace();
}
вывод:
Is in Daylight Saving Time in this time zone? true // should be false!
Я отправил электронное письмо Яне (Орган по присвоению номеров в Интернете) - www.iana.org, и я жду от них ответа.
Кто-нибудь знает что-нибудь об этом?
Спасибо
Редактировать :
Чтобы прояснить вопрос: я хочу знать, как работают обновления базы данных TimeZone (когда это будет сделано и кем).
Sinse the Iana ответил на мою электронную почту и объяснил мне, что изменения в DST Бразилии были сделаны на Бразилия отменила DST - GitHub , и это будет в следующем выпуске базы данных, мой На вопрос был дан ответ.