Russian Qt Forum
Ноябрь 22, 2024, 15:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Определить временную зону Москвы (Qt 5)  (Прочитано 3571 раз)
sergek
Гипер активный житель
*****
Offline Offline

Сообщений: 872


Мы должны приносить пользу людям.


Просмотр профиля
« : Ноябрь 15, 2014, 14:04 »

Коллеги, необходимо определить смещение поясного времени Москвы относительно всемирного.
Использую функцию QTimeZone::offsetFromUtc(const QDateTime & atDateTime):
Код:
    QDateTime date;
    QTimeZone zone(QByteArray("Europe/Moscow"));
    int offset = zone.offsetFromUtc(date)/3600;
Смущает, что функция "Returns the total effective offset at the given atDateTime, i.e. the number of seconds to add to UTC to obtain the local time."
Менял у себя системный часовой пояс, но смещение остается прежним. Интересно, а вдруг в Благовещенске этот offset будет другой? Тогда не понятно, зачем нужен параметр atDateTime.
Может, лучше сделать так:
Код:
    QDateTime date;
    QTimeZone zone(QByteArray("Europe/Moscow"));
    QTimeZone zoneUTC(QByteArray("Europe/London"));
    int offset = (zone.offsetFromUtc(date) - zoneUTC.offsetFromUtc(date))/3600;
Как считаете?
Записан

Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.095 секунд. Запросов: 22.