![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
alex2011 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 15.1.2011 Репутация: нет Всего: нет |
Hi All.
Вопрос такой: Существуют ли стандартные средства (да ещё такие, чтоб работали на разных платформах) для преобразования вот такой строки: "2011-01-14T13:55:28.767+06:00" в какое-нибудь из представлений времени (time_t, struct tm) ? Распарсить его руками конечно же не сложно (даже с учетом того, что миллисекунды могут быть либо не быть, так же, как и смещение относительно Гринвича). Но вот в чём вопрос: как потом преобразовать это время в местное? Т.е. тут как-то получается, что вот от этих +06:00 надо отнять 3 или 4 (если для Москвы), в зависимости от того, летнее время на дату 2011-01-14 или нет. А вот как бы определить дату перевода времени на летнее или зимнее в таком-то году? Или я вообще иду не тем путём (я не имею в виду здесь выбор языка или платформы) ? |
|||
|
||||
Vicul |
|
||||||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 169 Регистрация: 27.4.2009 Репутация: нет Всего: нет |
Если прога работает с mysql, там у мускула есть функция, которя берет такую строку и выдает юникс временной штамп, короче через sql запрос. Конечно дебильно, но работает.
Я когда то определял время летнее или зимнее из текущего. Я понимаю может это не то, но вдруг подойдет
Там я определяю Лондонское время, у меня сервере был на Амазоне, поэтому нужна была точная временная привязка. Далее из него получал tm* ptm, а из него день недели weekDay и сам день и месяца (day) в формате день.месяц и время в секундах. Потом определял московское время по лету или зиме. Вот функции
|
||||||||
|
|||||||||
Фантом |
|
|||
![]() Вы это прекратите! ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1516 Регистрация: 23.3.2008 Репутация: 1 Всего: 49 |
||||
|
||||
VirtualVoid |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 4.8.2009 Где: Сибирь Репутация: нет Всего: 1 |
В никсах есть стандартная функция strptime, в винде нету.
В бусте вроде тоже есть ее реализация. Еще можно попробовать скомпилировать ее самостоятельно, выкинув лишнее, например из нетбсдшной реализации. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |