Ответ 1
Это такой маленький код, что вы могли бы просто сделать это сами...
static final String MAPPING = "YXWVUTSRQPONZABCDEFGHIKLM";
...
String timeZoneCode = MAPPING.substring(offset + 12, offset + 13);
У меня есть объект org.joda.time.DateTime
, и мне нужно получить аббревиатуру военного времени (например T для UTC-07: 00, U для UTC-08: 00, Z для UTC ± 00: 00).
См. http://en.wikipedia.org/wiki/List_of_military_time_zones
Вот как я это делаю сейчас:
int offset = dt.getZone().toTimeZone().getRawOffset() / (60 * 60 * 1000);
String timeZoneCode = timeZoneCodeMap.get(offset);
где timeZoneCodeMap
- это HashMap<Integer, String>
, который инициализируется такими элементами, как следующие
timeZoneCodeMap.put(1, "A");
timeZoneCodeMap.put(2, "B");
timeZoneCodeMap.put(3, "C");
...
timeZoneCodeMap.put(-10, "W");
timeZoneCodeMap.put(-11, "X");
timeZoneCodeMap.put(-12, "Y");
timeZoneCodeMap.put(0, "Z");
Существует ли функция или библиотека (в Йоде или иначе), которая уже содержит отображение часовых поясов на военные сокращения?
Не стесняйтесь сообщать мне, есть ли лучший способ рассчитать смещение.
Это такой маленький код, что вы могли бы просто сделать это сами...
static final String MAPPING = "YXWVUTSRQPONZABCDEFGHIKLM";
...
String timeZoneCode = MAPPING.substring(offset + 12, offset + 13);