QDate

目錄

1、獲取時間

2、增加時間

3、設置時間

4、判斷時間是否有效

5、測試代碼


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();
}

 

發佈了42 篇原創文章 · 獲贊 52 · 訪問量 6578
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章