我试图用 Qt 制作一个程序来计算两个日期之间的天数。问题是我是 Qt 的新手,我还没有让它工作。
我想QDateTime
这很容易,但我不了解程序的结构。
有人可以为我举个例子吗。例如,只是一个简单的程序,显示距离圣诞节还有多少天。
你的问题很简单。
在 QtCreator 中创建控制台应用程序,并以main.cpp
这种方式进行编辑:
#include <QApplication>
#include <QDate>
#include <QDebug>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// get current date
QDate dNow(QDate::currentDate());
// create other date
// by giving date 12.21.2012 (joke about end of the world)
QDate dEndOfTheWorld(2012, 12, 21);
qDebug() << "Today is" << dNow.toString("dd.MM.yyyy")
<< "Days to end of the world: "
<< dNow.daysTo(dEndOfTheWorld);
return a.exec();
}
你会得到如下输出:
今天是“18.12.2012”距离世界末日的天数:3
PS但我对你的建议是学习 C++(添加到你最喜欢的这个主题——The Definitive C++ Book Guide and List),然后学习 Qt(我推荐Jasmin Blanchette & Mark Summerfield 的 C++ GUI Programming with Qt 4和 Summerfields 的其他书籍)。祝你好运!
你将不得不使用
qint64 QDateTime::toMSecsSinceEpoch () const
这将日期时间返回为自 1970-01-01 00:00:00.000 以来经过的毫秒数
因为没有办法直接找到timeSpan。将您的 2 个 dateTime 对象转换为毫秒,使用数学运算减去并转换为天、小时、分钟、秒。