https://blog.csdn.net/qq_18286031/article/details/78538769

Qt两个日期相减的问题
首先,由日期与时间戳的相互转换

QDateTime time = QDateTime::currentDateTime(); //获取当前时间
int timeT = time.toTime_t(); //将当前时间转为时间戳

将一定格式的日期转换为时间戳
QString starttime ="2017-11-11 12:00:00";
QString endtime = "2017-11-13 12:00:01";
QDateTime start = QDateTime::fromString(starttime, "yyyy-MM-dd hh:mm:ss");
QDateTime end = QDateTime::fromString(endtime, "yyyy-MM-dd hh:mm:ss");
uint stime = start.toTime_t();
uint etime = end.toTime_t();

与toTime_t()功能相反的是fromTime_t(),把时间戳转为QDateTime类型。因为这个方法是静态的,所以使用方法为

QDateTime time = QDateTime::fromTime_t(timeT);

两个日期相隔的天数由时间戳来相减得到

int ndaysec = 24*60*60;
qDebug() << "Day = " << (etime - stime)/(ndaysec) + ((etime - stime)%(ndaysec)+(ndaysec-1))/(ndaysec) - 1;
注意:上面的计算中,天数相隔时间差24小时内为0天,可以这样理解,26小时大于24小时(一天),那么他们相差1天了,如果24小时内为1天计算,26小时大于24小时,那么就将后面的减一去掉就可以了。

Qt获取前几天的时间

QDateTime time = QDateTime::currentDateTime();//获取系统现在的时间
QString str = time.toString("yyyy-MM-dd"); //设置显示格式
QString BeforeDaystr=time.addDays(-1).toString("yyyy-mm-dd");//获取前一天时间

具体上代码:

#include <QCoreApplication>
#include <QString>
#include <QDateTime>
#include <QTime>
#include <QDebug>

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString starttime ="2017-11-11 12:00:00";
QString endtime = "2017-11-13 12:00:01";
QDateTime start = QDateTime::fromString(starttime, "yyyy-MM-dd hh:mm:ss");
QDateTime end = QDateTime::fromString(endtime, "yyyy-MM-dd hh:mm:ss");
uint stime = start.toTime_t();
uint etime = end.toTime_t();
qDebug() << "starttime" << starttime;
qDebug() << "endtime" << endtime;
qDebug() << "......................";

qDebug() << "etime" << etime;
qDebug() << "stime" << stime;
qDebug() << "etime - stime" << etime - stime;

int ndaysec = 24*60*60;
qDebug() << "Day = " << (etime - stime)/(ndaysec) + ((etime - stime)%(ndaysec)+(ndaysec-1))/(ndaysec) - 1;
return a.exec();
}
结果如下:

---------------------
作者:逝水流年丶轻染尘
来源:CSDN
原文:https://blog.csdn.net/qq_18286031/article/details/78538769
版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://www.cnblogs.com/umbrella-panda/articles/10570470.html

转:QT时间相关的使用(日期相减问题)相关推荐

  1. QT时间相关的使用(日期相减问题)

    原文地址::https://blog.csdn.net/qq_18286031/article/details/78538769 Qt两个日期相减的问题 首先,由日期与时间戳的相互转换 QDateTi ...

  2. trunc怎么进行日期相减_【PL/SQL】 关于日期操作的常见需求

    需求1: 统计一年内所有是星期三的日期.思路: 枚举法,将整年所有日期都罗列出来,然后再用Where条件筛选.Step1: 求出当年的起初日期1/1和最后一天12/31(可省略) SELECT ADD ...

  3. oracle日期相减工作日_Oracle 计算两个日期间隔的天数、月数和年数

    在Oracle中计算两个日期间隔的天数.月数和年数: 一.天数: 在Oracle中,两个日期直接相减,便可以得到天数: select to_date('08/06/2015','mm/dd/yyyy' ...

  4. 日期相减计算年_函数 | Excel有个“秘密”函数,计算年龄工龄特方便

    工作中经常会遇到涉及日期间隔的计算问题,比如计算两个日期之间的天数.月数.年数,这时需要用到Excel中一个秘密函数. 说到"秘密",是因为你在微软Excel提供的的函数列表里是找 ...

  5. android 日期相减得天数_Excel日期计算方法大全

    关注回归线  Excel变简单 日期数据是Excel中很重要的一类数据,很多分析都依赖于日期的计算.但是,大多数Excel使用者都对日期计算的方法不太熟悉. 本文总结了日常工作中常见的日期计算场景和相 ...

  6. oracle日期相减工作日_oracle 日期相减 转载

    转自 http://hi.baidu.com/juanjuan_66/blog/item/cf48554c9331fbe6d62afc6a.html oracle日期相减 2012-02-10 12: ...

  7. C#.Net工作笔记008---c# 日期时间大小比较_日期相减

    技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 /// <summary>         /// 比较两个日期大小         ...

  8. mysql中日期相减_解放双手!用这3个日期函数解决入职、工龄等天数的计算

    人事部门员工的入职天数.财务部门合同的到期剩余天数等等,可以通过Excel表格来实现自动计算功能. 今天小编分享三个与日期有关的函数 一.EDATE函数 很多公司新员工入职会有3个月试用期,根据入职日 ...

  9. mysql时间相减得到天数保留两位_[转]Mysql日期函数-日期相减返回天数

    MySQL datediff(date1,date2):两个日期相减 date1 - date2,返回天数. select datediff('2008-08-08', '2008-08-01'); ...

最新文章

  1. 深入redis内部---网络编程
  2. element-ui table表格内容相同自动合并
  3. xstart连不上linux_Xstart远程连接Linux图形用户界面
  4. 新手网管升级之路(三)
  5. C/C++[codeup 1907]吃糖果
  6. dnf红眼补丁在哪下载_dnf狂战士技能血色补丁-DNF狂战士技能红色补丁下载 v3.23完全版--pc6下载...
  7. 指纹匹配算法matlab,指纹识别算法matlab程序
  8. win10找回BitLocker密钥的方法
  9. 武汉大学计算机学院周维,研究生院
  10. 电脑小知识:如何选择合适的内存条?如何查看自己电脑内存条的内存大小和主频呢?
  11. CVPR 2022 | End-to-End Referring Video Object Segmentation with MultimodalTransformers
  12. C++——NOIP模拟题——零件加工
  13. vs2012 visual studio 2012安装失败管道正在关闭解决方法
  14. SCOI2016酱油记
  15. java 过滤关键字 自定义字典库
  16. MongoDB使用用户登录访问
  17. mysql从库有张表不同步_mysql主从数据库不同步的2种解决方法
  18. https://github.com/Trinea/android-open-project
  19. java 执行js脚本_java中调用js脚本
  20. [转帖]Photoshop将照片制作成素描效果

热门文章

  1. 1706_Python中带余数除法
  2. SDN 与 Mininet 概述
  3. Unity3D游戏开发之刀光剑影特效如何实现
  4. LOL暗影岛服务器维修,暗影岛-英雄联盟官方网站-腾讯游戏
  5. KVM使用Pass-through和SR-IOV
  6. android 复制内容到剪切板方法
  7. 换手率高量比小是怎么回事?
  8. PCI/PCIE之总线、设备枚举
  9. 符合usbxhci的主机控制器,黄色感叹号,所有USB用不了
  10. 如何获取常见位置的经纬度