提供
时间日期
的表达和相关函数。
QDateTime
通过
日期
+
时间
来构造一个
日期时间
。它综合了
QDate
和
QTime
的所有特性。
它可以通过
系统时钟
来获取
当前DateTime
。它还提供了
比较
时间
的方法和对时间进行
加减运算
的方法。
QDateTime
可以分别通过
本地时间
、
UTC、UTC偏移时间、指定时区
(通过
QTimeZone
类实现)来描述日期时间。这些时间间是相关的,例如,
UTC偏移 +3600×8 秒
等同于
ISO标准标识 UTC+08:00
,等同于
时区为CN/Beijing
的时间。
一个QDateTime既可以直接通过传入一个date和time进行构造,也可以调用如
currentDateTime()、fromMSecsSinceEpoch()
的静态函数来进行构造。
date
和
time
可以通过
setDate()、setTime()
来进行设置,也可以直接通过
setMSecsSinceEpoch()
来用
时间戳
进行构造,也可以用
fromString()
来从一个
String
用相关的
格式
进行构造。
2)当前时间
QDateTime::
currentDateTime()
返回
当前DateTime
,
QDateTime::
currentDateTimeUtc()
返回
UTC下的当前时间
。
3)提取与设置
可以通过
d
ate()、time()
来提取该DateTime中的Date与Time。同样的信息可以通过在
toString()
中传入指定格式来实现。
addMSecs()
:加上毫秒
addSecs()
:秒
addDays()
:日
addMonths()
:月
addYears()
:年
daysTo()
:两个DateTime间的天数
msecTo()
:两个DateTime间的毫秒数
toTimeSpec()
:转换为本地时间
toOffsetFromUtc()
:转换为UTC偏移时间
toTimeZone()
:转换为时区时间
timeSpec()
:存储时间的相对时间规范
Qt::TimeZone
+
timeZone()
:返回时区
①没有0年
只有-1与1年
1、模块和加载项
QDateTime
(QDate
date
, QTime
time
, QTimeZone
timeZone
)
用指定的Date、Time、TimeZone构造DateTime
QDateTime
(QDate
date
, QTime
time
, Qt::TimeSpec
spec
, int
offsetSeconds
)
QDateTime
(QDate
date
, QTime
time
, Qt::TimeSpec
spec
= Qt::LocalTime)
QDateTime
(QDate
date
)
用指定QDate构造QDateTime
QDateTime
()
fromMSecsSinceEpoch
(qint64
msecs
)
fromMSecsSinceEpoch
(qint64
msecs
, Qt::TimeSpec
spec
, int
offsetSeconds
= 0)
fromMSecsSinceEpoch
(qint64
msecs
, QTimeZone
timeZone
)
fromSecsSinceEpoch
(qint64
secs
, Qt::TimeSpec
spec
= Qt::LocalTime, int
offsetSeconds
= 0)
fromSecsSinceEpoch
(qint64
secs
, QTimeZone
timeZone
)
fromString
(QString
string
, Qt::DateFormat
format
= Qt::TextDate)
fromString
(QString
string
, QString
format
)
fromString
(QString
string
, QString
format
, QCalendar
cal
)
setDate
(QDate
date
)
setMSecsSinceEpoch
(qint64
msecs
)
setOffsetFromUtc
(int
offsetSeconds
)
setSecsSinceEpoch
(qint64
secs
)
setTime
(QTime
time
)
setTimeSpec
(Qt::TimeSpec
spec
)
setTimeZone
(QTimeZone
toZone
)