【问题标题】:How to convert QDateTime to GMT Unix Stamp如何将 QDateTime 转换为 GMT Unix Stamp
【发布时间】:2014-11-16 01:19:45
【问题描述】:

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

QDateTime PubDate = audioFile->GetPublishingdate();

uint UTC_Time = PubDate.toTime_t();

对于今天的日期Mon 22 Sep 00:00:00 2014,我收到了1411358400

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

【问题讨论】:

    标签: c++ qt date gmt


    【解决方案1】:

    QDateTime 默认情况下将您存储在其中的任何值视为本地日期时间。您需要使用方法setTimeSpecQDateTime 知道它保留了GTM。

    QDateTime PubDate = audioFile->GetPublishingdate();
    
    PubDate.setTimeSpec(Qt::UTC);
    
    uint UTC_Time = PubDate.toTime_t();
    

    【讨论】:

    • 第 2 行的错字:PutDate 而不是 PubDate
    • @Scooter 谢谢。已更正。
    猜你喜欢
    • 1970-01-01
    • 2019-01-27
    • 2016-07-21
    • 2020-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 2011-07-26
    相关资源
    最近更新 更多