Веб-сервис для преобразования имени тимзона в смещение по Гринвичу - PullRequest
1 голос
/ 15 декабря 2010

Кто-нибудь знает веб-сервис, который преобразует строку часового пояса в соответствующее смещение по Гринвичу?

То есть мне нравится отправлять HTTP-запрос следующим образом:

http://servcer.com/getgmtoffset?timezone=Europe/Zurich

и получите «+1».

Почему внешний сервис?

Я пишу скрипт приложений Google , в котором API не имеет таких параметров преобразования, и я предпочитаю не обновлять таблицу преобразования самостоятельно, когда страны решают использовать разные параметры перехода на летнее время.

Ответы [ 3 ]

2 голосов
/ 01 февраля 2011

Я вижу, что у вас уже есть решение, но я хотел отметить, что смещение часового пояса не имеет смысла без конкретной даты в этом часовом поясе.Смещение будет меняться во многих часовых поясах в течение года, чтобы учесть летнее время.

Похоже, вам нужно знать только смещение в конкретный момент времени, когда вы выполняете вызов API.Если вам нужна произвольная дата, вам нужно передать дату и часовой пояс API, чтобы получить правильное смещение.

Здесь есть несколько замечательных API геокодирования для часовых поясов, которые могут оказаться полезными: Поиск часового пояса по долготе широты

1 голос
/ 16 декабря 2010

Я нашел что-то в этом ответе

http://json-time.appspot.com/time.json?tz=Europe/Zurich

{
  "tz": "Europe\/Zurich", 
  "hour": 9, 
  "datetime": "Thu, 16 Dec 2010 09:29:16 +0100", 
  "second": 16, 
  "error": false, 
  "minute": 29
}
0 голосов
/ 15 декабря 2010

Не думаю, что для этого есть веб-сервис.Возможно, потому что страны редко (никогда?) Не меняют свою политику перехода на летнее время.

Я не знаю, что вы можете сделать в скриптах приложений Google, но если у вас есть доступ к библиотекам Java, вы можете просто использовать TimeZone.getOffset (long) метод.

Вы также можете попробовать this , но это может быть взломом, так как вам, вероятно, потребуется проанализировать html-ответ ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...