Как конфертировать из отметки времени в дату в Qt? - PullRequest
14 голосов
/ 29 мая 2010

У меня есть метка времени Unix, и мне нужно преобразовать ее в удобочитаемую дату + время. Как это можно сделать в Qt?

Ответы [ 4 ]

25 голосов
/ 29 мая 2010
int unixTime = 1234567890;
QDateTime timestamp;
timestamp.setTime_t(unixTime);
qDebug() << timestamp.toString(Qt::SystemLocaleShortDate);

Это должно помочь тебе. Как сказал Мэтью, см. QDateTime.setTime_t , а также QDateTime.toString . У toString есть перечисление с несколькими различными опциями, а также перегрузка, в которой вы можете передать строку, допускающую сколь угодно большую настройку.

6 голосов
/ 29 мая 2010
1 голос
/ 05 августа 2016

Вы можете использовать статическую функцию: "fromTime_t", например:

qDebug () << QDateTime :: fromTime_t (your_time_stamp) .toString ("дд / мм / гггг чч: мм: сс"); </p>

1 голос
/ 04 февраля 2016

Один хороший пример

qint64 qiTimestamp=QDateTime::currentMSecsSinceEpoch();
QDateTime dt;
dt.setTime_t(qiTimestamp/1000);
ui->lineEdit_DateTime->setText(dt.toString("yyyy-MM-dd hh:mm:ss"));
...