QDate学习之获取两个日期范围中的所有日期

Posted clever101

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QDate学习之获取两个日期范围中的所有日期相关的知识,希望对你有一定的参考价值。

作者:朱金灿
来源:clever101的专栏

为什么大多数人学不会人工智能编程?>>>

  思路:
1.获取两个日期中的日子差;
2.利用QDate类的addDays接口通过日子差获取具体日期。具体代码如下:

#include <QtCore/QDate>
#include <QtCore/QDebug>

/*获取两个日期范围中的所有日期
beginDate -- 起始日期
endDate   -- 结束日期
*/
static QList<QDate> GetAllDate(const QDate& beginDate, const QDate& endDate)

	QList<QDate> listDate;
	listDate.push_back(beginDate);

	qint64 nDay = beginDate.daysTo(endDate);
	if (nDay > 1)
	
		for (int i = 1; i <= (nDay - 1); i++)
		
			QDate nextDate = beginDate.addDays(i);
			listDate.push_back(nextDate);
		
	

	listDate.push_back(endDate);
	return listDate;

//测试程序
int main(int argc, char *argv[])

	QApplication a(argc, argv);

	QDate beginDate = QDate(2021, 3, 20);
	QDate endDate = QDate(2022, 3, 20);

	QList<QDate> listDate = GetAllDate(beginDate, endDate);
	for (int i = 0;i<listDate.count();i++)
	
	qDebug() << listDate[i].year()<<":"<<listDate[i].month() << ":"<< listDate[i].day()<<"\\n";
	

以上是关于QDate学习之获取两个日期范围中的所有日期的主要内容,如果未能解决你的问题,请参考以下文章

QDate学习之获取两个日期范围中的所有日期

2.6.2 QDate类与QDateEdit控件介绍(日期处理)

日期与时间控件QDate, QTime, QDateTime

easyui datebox范围设置日期对比参考 和easyui的datebox怎么禁止手动输入

QT5-控件-QDateEdit 和 日期类QDate

获取两个日期之间的月份范围