Как получить текущее значение GMT? - PullRequest
0 голосов
/ 26 мая 2011

В моем приложении я использую GeoNamesAPI для получения текущего времени в любом месте.Я зарегистрировался для этого.

Мой код выглядит так:

Timezone currentTimeZone;
org.geonames.WebService.setUserName("mathew");
currentTimeZone = GeoNamesAPI.fetchTimeZone(latitude, longitude);

Проблема в том, что когда я проверяю время в любом океане, этот currentTimeZone возвращает ноль.Поэтому в этом случае я показываю значение GMT.

String time = null;
Integer timeZone = (int) (((longitude / 7.5) + 1) / 2);

if (timeZone >= 0) {
    time = "GMT+" + timeZone;
} else {
    time = "GMT" + timeZone;
}

Так что значение time будет иметь вид GMT + somevalue.Я хочу найти другое решение для этого случая.В этом случае также я хочу отобразить значение времени.Как я могу это сделать?Есть ли способ получить значение GMT?Примечание: я не хочу показывать дату, требуется только время.

Заранее спасибо.

1 Ответ

0 голосов
/ 26 мая 2011

Я понял, что это сработало.Код указан ниже:

Integer timeZone = (int) (((longitude / 7.5) + 1) / 2);
DateFormat dateformat = DateFormat.getTimeInstance(DateFormat.SHORT);
dateformat.setTimeZone(TimeZone.getTimeZone("gmt"));
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR, timeZone);   //Adding/Subtracting hour to current date time
String newdate = dateformat.format(cal.getTime());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...