《Qt5+QDate和QTime获取当前系统日期和时间》
QDate对象包含日历日期,即年,月,日的数字。它可以从系统时钟读取当前日期,提供了比较日期和操作日期的功能。例如,可以在日期中添加和减去天,月和年。QTime对象包含一个时钟时间,即自午夜的小时,分钟,秒和毫秒数。它可以从系统时钟读取当前时间并测量经过时间的跨度,它提供了通过添加毫秒数来比较时间和操作时间的功能。
QDate简单示例
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QDate"
#include "QDebug"
#include "QString"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QDate D1;
QDate D2(1995,1,26);
qDebug() << "D2:" <<D2;
D1=QDate::currentDate();
qDebug() << "D1:" << D1;//获取当前日期
qDebug() << "year:" << D1.year();//获取年
qDebug() << "month:" << D1.month();//获取月
qDebug() << "day:" << D1.day();//获取日
qDebug() << "isValid:" << D1.isValid();//日期是否合法
qDebug() << "dayOfWeek:" << D1.dayOfWeek();//今天是周几
qDebug() << "dayOfYear:" << D1.dayOfYear();//当前是这一年的第多少天
qDebug() << "daysInMonth:" << D1.daysInMonth();//这个月有多少天
qDebug() << "daysInYear:" << D1.daysInYear();//这一年有多少天
qDebug() << "isNull:" << D1.isNull();//日期是否为空,为空返回true
qDebug() << "daysTo:" << D1.daysTo(D2);//比较两个日期相差多少天,D2比D1早为负数
qDebug() << "isLeapYear:" << QDate::isLeapYear(D1.year());//是否闰年
}
MainWindow::~MainWindow()
{
delete ui;
}
输出结果
D2: QDate("1995-01-26")
D1: QDate("2018-11-21")
year: 2018
month: 11
day: 21
isValid: true
dayOfWeek: 3
dayOfYear: 325
daysInMonth: 30
daysInYear: 365
isNull: false
daysTo: -8700
isLeapYear: false
QTime简单示例
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QTime"
#include "QDebug"
#include "QString"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QTime T1;
QTime T2(12,9,26);
QTime T3;
qDebug() << "T2:" <<T2;
T1=QTime::currentTime();
qDebug() << "T1:" << T1;//获取当前日期
qDebug() << "hour:" << T1.hour();//获取时
qDebug() << "minute:" << T1.minute();//获取分
qDebug() << "second:" << T1.second();//获取秒
qDebug() << "msec:" << T1.msec();//获取毫秒
qDebug() << "isValid:" << T1.isValid();//时间是否合法
qDebug() << "secsTo:" << T1.secsTo(T2);//比较两个时间相差多少秒,T2比T1早为负数
qDebug() << "msecsTo:" << T1.msecsTo(T2);//比较两个时间相差多少毫秒,T2比T1早为负数
qDebug() << "msecsSinceStartOfDay:" << T1.msecsSinceStartOfDay();//返回自当天的毫秒数
qDebug() << "isNull:" << T1.isNull();//日期是否为空,为空返回true
T3.start();
qDebug() << "T3:" << T3;//获取T3
for(int i=0;i<1000000;i++)
{
;
}
T3.elapsed();
qDebug() << "T3:" << T3;//获取T3
}
MainWindow::~MainWindow()
{
delete ui;
}
输出结果
T2: QTime("12:09:26.000")
T1: QTime("11:57:10.193")
hour: 11
minute: 57
second: 10
msec: 193
isValid: true
secsTo: 736
msecsTo: 735807
msecsSinceStartOfDay: 43030193
isNull: false
T3: QTime("11:57:10.194")
T3: QTime("11:57:10.194")
完整代码
QDate简单示例链接:https://pan.baidu.com/s/1zOM-PDjDhsKboKCxSlp50A
提取码:xo0jQTime简单示例链接:https://pan.baidu.com/s/1HIyJTbIbrpO6CLlq9CalCA
提取码:7bm5