生产生活中,我们常常需要计算两个日期之间的时间差,诸如年龄,生产加工时间,运行时间等,其中的依赖原理是时间戳函数。
在Qt中,与时间日期相关的两个重要类是QDate
和QTime
,当然还有两者“爱的结晶”–QDateTime
利用QDtateTime
的.secsTo
方法,我们可以计算一个日期到另一个日期的秒数。
qint64 deltaSec = ui->startDateTime->dateTime().secsTo(ui->endDateTime->dateTime());
对结果进行求余操作我们能够计算出两个日期所经历的详细时分秒的描述。
int hours = deltaSec / (60 * 60);
int minutes = deltaSec % (60 * 60) / 60;
int seconds = (deltaSec % 60);