QTime QDate QDateTime
原创
©著作权归作者所有:来自51CTO博客作者wx5fc8832a61484的原创作品,请联系作者获取转载授权,否则将追究法律责任
1,QTime 获取当前时间
QTime t=QTime::currentTime();
QString str=t.toString("hh:mm:ss"); //时分秒 如:11:32:23
ui->label->setText(str);
2,QDate 获取当前日期
QDate d = QDate::currentDate();
QString str=d.toString("yyyy-MM-dd"); //年月日 如:2018-01-01
ui->label->setText(str);
3,QDateTime 获取当前日期和时间(QDateTime = QDate+QTime)
QDateTime dateTime =QDateTime::currentDateTime();
QString str= dateTime.toString("yyyy/MM/dd hh:mm:ss "); //年月日 时分秒 如:2018-01-01 11:32:23
ui->label->setText(str);
//添加n天之后的日期,n可以为负数 为负数就是返回历史日期。
QDate QDate::addDays(qint64 ndays) const;
//添加n月之后的日期,n可以为负数
QDate QDate::addMonths(int nmonths) const;
//添加n年之后的日期,n可以为负数
QDate QDate::addYears(int nyears) const;
QDateTime转化为QString:
QDateTime dateTime =QDateTime::currentDateTime();
QString str = dateTime.toString("yyyy/MM/dd hh:mm:ss");//yyyy/MM/dd or hh:mm:ss 分开
ui->label->setText(str);
QString转化为QDateTime:
QString str = "2018-12-12 12:23:23";
QDateTime dateTime2 =QDateTime::fromString(str,"yyyy-MM-dd hh:mm:ss");
QDateTime 重载了>,<,可以用于比较日期前后:
QDateTime d1,d2;
if(d1>d2){}
QDateTime d11(QDate(2018,8,8),QTime(12,10,22,123)) //构造
QDate date() const;
QTime time() const;
qint64 daysTo(const QDateTime &) const; //比较天数差异
qint64 secsTo(const QDateTime &) const; //比较秒数差异
qint64 msecsTo(const QDateTime &) const; //比较毫秒数差异
int days = dEnd.daysTo(dStart);
int secs= dEnd.secsTo(dStart);
int msecs= dEnd.msecsTo(dStart);