开发者

How to produce a good dropdown list of timezones that correspond to java TimeZone(s)

What strategy do other webapps use to generate a nicely formatted list of timezones for user preferences?

I tried just getting all the time zones, but the list is long and not exactly formatted well for a user.

Just want to know how other people are开发者_如何学C doing this.


The following code snippet

...
String [] ids = TimeZone.getAvailableIDs();
for(String id:ids) {
  TimeZone zone = TimeZone.getTimeZone(id);
  int offset = zone.getRawOffset()/1000;
  int hour = offset/3600;
  int minutes = (offset % 3600)/60;
  System.err.println(String.format("(GMT%+d:%02d) %s", hour, minutes, id));
}   
...

will print formatted time zones like:

(GMT+12:00) Pacific/Tarawa
(GMT+12:00) Pacific/Wake
(GMT+12:00) Pacific/Wallis
(GMT+12:45) NZ-CHAT

You might want to add filtering for different offsets and/or time zones given from zone.getDisplayName(zone.useDaylightTime(), TimeZone.SHORT).


An easy way is to put the time zones IDs in the list instead of the time zones themselves. TimeZone.getAvailableIDs() returns values such as GMT, Europe/Paris, America/New_York...

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜