Qt提供了获取系统时间的方法,下面介绍用法。
QDateTime
获取系统时间
QDateTime dateTime = QDateTime::currentDateTime();
QDate date = dateTime.date();
QTime time = dateTime.time();
qDebug() << date;
qDebug() << time;
输出
QDate("2022-10-14")
QTime("15:29:46.932")
输出自定义格式字符串
如果想要输出指定格式的字符串,可以使用toString方法。
QDateTime curDateTime = QDateTime::currentDateTime();
qDebug() << dateTime.toString(" yyyy-MM-dd hh:mm:ss");
输出
2022-10-14 15:55:33
toString通过"y"、“M”、“d”、“h”、“m”、“s”、"z"等标识符来确定格式。
下表以“2022-10-14 15:55:33”为例说明各个标识符的用法。
标识符 | 用法 |
---|---|
y | 代表年份,有"yyyy"和"yy"两种用法,分别输出2022和22 |
M | 代表月份,可以重复1-4次,1-2次时输出10, 3次时输出10月,4次时输出十月 |
d | 代表日期,可以重复1-4次,1-2次时输出14, 3次时输出周五,4次时输出星期五 |
h/H | 代表小时,从此列开始不再介绍具体用法,可以查看源码qlocale.cpp的dateTimeToString |
m | 代表分钟 |
s | 代表秒 |
z | 代表毫秒 |
a/A | 代表上午/下午,会影响h的值,而不影响H |
t | 代表时间类型,默认为“中国标准时间” |