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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] округлить QDateTime  (Прочитано 2764 раз)
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« : Август 14, 2017, 09:38 »

QDateTime t; //время которое требуется округлить
int step; // в секундах. 60-округляем до минут, 3600 до часов, 6*3600 до 6 часов...

t = QDateTime::fromTime_t(((t.toTime_t()+step)/step)); // данная строка работает, но до 2035 года(округление вперед).

Может уже есть какой нибудь аналог в 64бита time_t?
« Последнее редактирование: Август 17, 2017, 12:50 от deMax » Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #1 : Август 14, 2017, 09:46 »

Нашел QDateTime::toMSecsSinceEpoch()
Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #2 : Август 17, 2017, 12:49 »

Округляю текущую дату на день (86400 секунд = 24*60*60 ) получаю время "Пн авг 14 03:00:00 2017" ( 1502668800 секунд кратно 86400)
Почему не полночь?
« Последнее редактирование: Август 17, 2017, 12:51 от deMax » Записан
deMax
Хакер
*****
Offline Offline

Сообщений: 600



Просмотр профиля
« Ответ #3 : Август 17, 2017, 12:51 »

понял, из за UTC+3
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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