2015-06-02 3 views
2

Мое требование - создать комбо со всеми идентификаторами часовых поясов, которые регулируются с помощью «Летнее время» (DST).Летнее время в java

С помощью метода getAvailableIDs() у меня может быть список идентификаторов timezoneID, например this, но проблема в том, что я не знаю, какой из них настраивается с помощью DST и тех, которые этого не делают.

Поэтому я оставляю свой вопрос здесь и ищет любое предложение или где его можно найти.

Спасибо.

ответ

3

Вы можете перемещаться по идентификаторам, получить соответствующую TimeZone и проверить useDaylightTime() на нем:

for (String tzId : TimeZone.getAvailableIDs()) { 
    TimeZone tz = TimeZone.getTimeZone(tzId); 
    if (tz.useDaylightTime()) { 
     // do something 
    } 
} 

Примечание: в зависимости от вашего случая использования, вы также можете проверить observesDaylightTime(), который немного отличается от useDaylightTime().

+0

Большое спасибо за быстрый ответ. Я смотрю на это. – gamo