目錄
1、獲取時間
QDate date1 = QDate::currentDate();//返回當前時間
QDate date2(2019,12,7);
qDebug() << date1;
int y, m, d;
date2.getDate(&y,&m,&d); //提取年月日時間
qDebug() << y << " " << m << " " << d;
qDebug() << date2.day(); //當月第幾天
qDebug() << date1.month(); //返回月數
qDebug() << date1.year(); //返回年數
qDebug() << date2.dayOfWeek(); //這周第幾天
qDebug() << date1.weekNumber(&y); //返回週數(1到53),並將年份存儲在*y中
qDebug() << date2.dayOfYear(); //今年第幾天
qDebug() << date2.daysInMonth(); //返回當月有多少天
qDebug() << date2.daysInYear(); //返回今年有多少天
qDebug() << date1.daysTo(date2); //間隔多少天
qDebug() << date1.toJulianDay(); //將日期轉爲儒略日時間
qDebug() << date1.toString(); //將日期轉爲字符串
qDebug() << date1.toString(Qt::TextDate); //將日期轉爲字符串
//將日期按照格式轉爲字符串;3或4個同字符是顯示漢字
qDebug() << date1.toString("dd.MM.yyyy");
qDebug() << date1.toString("ddd MMMM d yy");
qDebug() << date1.toString("'The day is' dddd");
//靜態函數
qDebug() << QDate::fromJulianDay(date1.toJulianDay());//將儒略日時間轉爲QDate
qDebug() << QDate::fromString(date1.toString(Qt::TextDate));//將string時間轉爲QDate
2、增加時間
qDebug() << "增加時間"<< date2;
date1 = date2.addYears(100); //增加年數,返回qdate
date1 = date2.addMonths(13); //增加月數,返回qdate
date1 = date2.addDays(32); //增加天數,返回qdate
qDebug() << date1;
3、設置時間
//設置時間
qDebug() << date1.setDate(2030,10,1);
qDebug() << date1;
4、判斷時間是否有效
//判斷時間是否有效
QDate date;
qDebug() << date.isNull(); //判斷,時間是否爲空
qDebug() << date.isValid(); //判斷,時間是否是有效時間,例如2月30無效
qDebug() << QDate::isLeapYear(2020); //判斷,年份是否是閏年
qDebug() << QDate::isValid(2020,6,6);//判斷,是日期是否有效
5、測試代碼
#include <QCoreApplication>
#include <QDebug>
#include <QDateTime>
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//獲取時間
QDate date1 = QDate::currentDate();//返回當前時間
QDate date2(2019,12,7);
qDebug() << date1;
int y, m, d;
date2.getDate(&y,&m,&d); //提取年月日時間
qDebug() << y << " " << m << " " << d;
qDebug() << date2.day(); //當月第幾天
qDebug() << date1.month(); //返回月數
qDebug() << date1.year(); //返回年數
qDebug() << date2.dayOfWeek(); //這周第幾天
qDebug() << date1.weekNumber(&y); //返回週數(1到53),並將年份存儲在*y中
qDebug() << date2.dayOfYear(); //今年第幾天
qDebug() << date2.daysInMonth(); //返回當月有多少天
qDebug() << date2.daysInYear(); //返回今年有多少天
qDebug() << date1.daysTo(date2); //間隔多少天
qDebug() << date1.toJulianDay(); //將日期轉爲儒略日時間
qDebug() << date1.toString(); //將日期轉爲字符串
qDebug() << date1.toString(Qt::TextDate); //將日期轉爲字符串
//將日期按照格式轉爲字符串;3或4個同字符是顯示漢字
qDebug() << date1.toString("dd.MM.yyyy");
qDebug() << date1.toString("ddd MMMM d yy");
qDebug() << date1.toString("'The day is' dddd");
//靜態函數
qDebug() << QDate::fromJulianDay(date1.toJulianDay());//將儒略日時間轉爲QDate
qDebug() << QDate::fromString(date1.toString(Qt::TextDate));//將string時間轉爲QDate
qDebug() << QDate::isLeapYear(2020); //判斷,年份是否是閏年
qDebug() << QDate::isValid(2020,6,6);//判斷,是日期是否有效
//增加時間
qDebug() << "增加時間"<< date2;
date1 = date2.addYears(100); //增加年數,返回qdate
date1 = date2.addMonths(13); //增加月數,返回qdate
date1 = date2.addDays(32); //增加天數,返回qdate
qDebug() << date1;
//設置時間
qDebug() << date1.setDate(2030,10,1);
qDebug() << date1;
//判斷時間是否有效
QDate date;
qDebug() << date.isNull(); //判斷,時間是否爲空
qDebug() << date.isValid(); //判斷,時間是否是有效時間,例如2月30無效
return a.exec();
}