Функции для локального времени в UTC

Делимся вариантами решения наиболее часто задаваемых вопросов.

Модератор: Модераторы

Функции для локального времени в UTC

Сообщение max » 10.12.2018 17:28:26

Здравствуйте!

Не получается декодировать: 2002-01-01 01:00:00 +0000 UTC, вот в этот тип данных: TDateTime.

пробовал:
StrToDate();
StrToDateTime();
TryStrToDate();
TryStrToDateTime();
Везде пишет - неправильная дата.

Какая функция для декодирования в TDateTime? (Нужно получить локальное время)
И там есть ещё возможность задавать, TFormatSettings и сепаратор, но и это не помогает.
Какие параметры нужно задать, чтобы перестали выводиться error?
Пожалуйста, дайте пример рабочего кода.
max
 

Re: Функции для локального времени в UTC

Сообщение olegy123 » 10.12.2018 22:48:27

max писал(а):Не получается декодировать:

и не получится, этот тип данных появился позднее перечисленных функций.

но есть решение ISO 8601

Добавлено спустя 6 минут 17 секунд:
пишут что Iso8601ToDate есть в lazarus в двух пакетах
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Функции для локального времени в UTC

Сообщение Vadim » 11.12.2018 07:37:51

max писал(а):Везде пишет - неправильная дата

Неправильная дата начинается с "+0000". Если Вас интересует только время UTC, а не его эквивалент в локальном (для Вашего часового пояса) времени, то вполне достаточно будет предварительно обрезать конец строки, который начинается с "+".
Для получения Вашего локального времени нужно прибавить те цифры, которые идут после символа "+", там время в часах и минутах. Либо не заморачиваясь с парсингом строки, просто прибавить то количество часов, которое соответствует Вашей локали. :-)
Это на тот случай, если сами захотите сделать. ;-)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Функции для локального времени в UTC

Сообщение max » 11.12.2018 16:12:19

olegy123 писал(а):пишут что Iso8601ToDate есть в lazarus в двух пакетах

thanks.
max
 


Вернуться в База знаний

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Рейтинг@Mail.ru