码迷,mamicode.com
首页 > 其他好文 > 详细

Qt里面计算时间差

时间:2020-04-21 09:24:21      阅读:74      评论:0      收藏:0      [点我收藏+]

标签:main   ret   做了   精确   qstring   list   nbsp   pre   ring   

最近学习IEC-102协议,源码用Qt进行开发。本人负责将其移至到南瑞D5000里面,领导提出,如果当前接收到15分钟之前的数据,需要将其抛弃掉,这就需要计算时间差。做了如下实验,为防忘却,特将其记录下。

包含头文件

#include <QCoreApplication>
#include<QString>
#include<QStringList>
#include<QDateTime>

文件名记录了该文件应当生成的时间,首先就需要提取该时间。

int main(int argc, char *argv[])
{
    QString FileNameStrU = "浙江.蛟禾光伏站_4Cwind_202004201600.rb";
    QStringList FileNameTmp = FileNameStrU.split("_");
    QString FileTime = FileNameTmp.at(2).left(12);

// QString 字符串转成时间格式

        QDateTime time = QDateTime::FileTime.fromString("yyyMMddhhmm");

  //  获取当前时间,可以精确到秒。

       QDateTime current _time = QDateTime::currentDateTime();

//计算时间差,先将两时间值 转成uint型,再进行减操作

  uint start_time = time.toTime_t();

     uint end_time = current_tome.toTime_t();

 

//计算时间差,结果为秒:

  int t_Ret = end_time - start_time;

      if(t_Ret > 15 * 60)

    printf("%s","file delay");

以上代码输出结果是 : file delay。

    

Qt里面计算时间差

标签:main   ret   做了   精确   qstring   list   nbsp   pre   ring   

原文地址:https://www.cnblogs.com/pldy/p/12742155.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!