如何将QDateTime转换为GMT Unix Stamp

时间:2014-09-22 06:33:28

标签: c++ qt date gmt

我正在尝试将QDateTime转换为Unix时间戳:

QDateTime PubDate = audioFile->GetPublishingdate();

uint UTC_Time = PubDate.toTime_t();

今天的日期Mon 22 Sep 00:00:00 2014我得到1411358400

如果我使用this website来检查时间戳是否正确,那么我会在今天的日期获得1411344000。为什么呢?

1 个答案:

答案 0 :(得分:3)

默认情况下,

QDateTime会将您存储的任何值视为本地日期时间。您需要使用方法setTimeSpecQDateTime知道它保留了GTM。

QDateTime PubDate = audioFile->GetPublishingdate();

PubDate.setTimeSpec(Qt::UTC);

uint UTC_Time = PubDate.toTime_t();