如何找到“HNEC”短名称的时区?

时间:2010-05-11 05:04:18

标签: java android timezone

我的Android应用正在使用此代码获取手机所在时区的简称。

String shortDisplayName = Calendar.getInstance().getTimeZone().getDisplayName(false, TimeZone.SHORT);

对于Strasbourg, France中的用户,shortDisplayName是“HNEC”(我还没有确切知道哪个区域设置正在播放)。我正在尝试确定哪个TimeZone具有该短名称。所以,我把一些快速测试代码汇总在一起:

String[] ids = TimeZone.getAvailableIDs();
Locale[] locales = Locale.getAvailableLocales();
for (String id : ids) {
    TimeZone timeZone = TimeZone.getTimeZone(id);
    int rawOffset = timeZone.getRawOffset();
    for (Locale locale : locales) {
        String shortDisplayName = timeZone.getDisplayName(false, TimeZone.SHORT, locale);
        if (shortDisplayName.equalsIgnoreCase("HNEC")) {
            System.out.println(id + " | " + shortDisplayName + " | " + rawOffset);
        }
    }
}

当我运行该代码时,没有行打印。也就是说,使用任何语言环境的时区都没有解析为“HNEC”的短名称?如何确定哪个TimeZone的短名称为“HNEC”?

0 个答案:

没有答案