java - 如何生成与 java TimeZone(s) 相对应的良好时区下拉列表

标签 java timezone

其他网络应用程序使用什么策略来为用户偏好生成格式良好的时区列表?

我尝试只获取所有时区,但列表很长而且格式不适合用户。

只是想知道其他人是怎么做到的。

最佳答案

下面的代码片段

...
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));
}   
...

将打印格式化的时区,如:

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

您可能希望为 zone.getDisplayName(zone.useDaylightTime(), TimeZone.SHORT) 给出的不同偏移量和/或时区添加过滤。

关于java - 如何生成与 java TimeZone(s) 相对应的良好时区下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4237796/

相关文章:

java - 在java中如何检查用户是否按下了某个键?

Java:将 Map 作为函数参数传递

忽略时区偏移量的 Javascript 日期时间字符串(实验)

Android DateUtils.formatDateTime 时区错误

ruby-on-rails - 如何在 Rails 中获取 utc 偏移量?

java - 需要一些解释才能真正理解 for 循环/二进制在这个特定示例中是如何工作的(JAVA)

java - 四元素数组对象的setter方法?

java - 关于根据条件启动线程

Java日期DST调整我的日期/时间

javascript - 全日历时区时刻js问题