一問(wèn)學(xué)會(huì)QT時(shí)間類(lèi)
QT獲取時(shí)間的類(lèi)有3個(gè),分別是QDate、QTime、QDateTime,他們屬于QT的network模塊。
一、QDATE類(lèi)提供日期函數(shù)
QDATE對(duì)象包含公歷中的日歷日期,即年、月和日數(shù)。它可以從系統(tǒng)時(shí)鐘讀取當(dāng)前日期。它提供了比較日期和操作日期的功能。
QDate::currentDate()從系統(tǒng)時(shí)鐘讀取當(dāng)前日期。例如:QDate::currentDate().toString("yyyy.MM.dd")
二、QTime類(lèi)提供時(shí)鐘時(shí)間函數(shù)
QTIME對(duì)象包含時(shí)鐘時(shí)間,即從午夜開(kāi)始的小時(shí)數(shù)、分鐘數(shù)、秒數(shù)和毫秒數(shù)。它可以從系統(tǒng)時(shí)鐘讀取當(dāng)前時(shí)間并測(cè)量經(jīng)過(guò)的時(shí)間跨度。它提供了用于比較時(shí)間和通過(guò)添加毫秒來(lái)操縱時(shí)間的功能。QTIME使用24小時(shí)時(shí)鐘格式,它沒(méi)有AM/PM的概念。與QDateTime不同的是,QTime沒(méi)有時(shí)區(qū)或夏令時(shí)概念。
QTime::currentTime()獲取時(shí)間為時(shí)分秒,例如:QTime::currentTime().toString("hh:mm:ss:zzz")
三、QDateTime是類(lèi)QDate和類(lèi)QTime的相結(jié)合
它可以從系統(tǒng)時(shí)鐘中讀取當(dāng)前日期時(shí)間。它提供比較日期時(shí)間和操作日期時(shí)間的函數(shù),比如加上一定數(shù)量的秒、天、月或年。和QDate相比可以設(shè)置時(shí)區(qū)屬性:setTimeZone(const QTimeZone &toZone)
QDateTime::currentDateTime();//獲取系統(tǒng)現(xiàn)在的時(shí)間,
例如:QDateTime::currentDateTime().toString("yyyy.MM.dd hh:mm:ss:zzz")
QDateTime轉(zhuǎn)QString。
QDateTime begin_time = QDateTime::currentDateTime();//獲取系統(tǒng)現(xiàn)在的時(shí)間 QString begin =begin_time .toString("yyyy.MM.dd hh:mm:ss.zzz ddd"); debug(2019.03.13 14:47:24:333 周三)
QString轉(zhuǎn)QDateTime。
QString begin= "2019-03-31 12:24:36"; QDateTime begin_time = QDateTime::fromString(begin, "yyyy-MM-dd hh:mm:ss");
計(jì)算時(shí)間差:
QString begin = "2019-03-31 12:24:36"; QDateTime begin_time = QDateTime::fromString(begin, "yyyy-MM-dd hh:mm:ss"); QString end = "2019-04-01 12:24:36"; QDateTime end_time = QDateTime::fromString(end, "yyyy-MM-dd hh:mm:ss"); begin_time.secsTo(end_time)//轉(zhuǎn)換為秒 86400 begin_time.daysTo(end_time)//轉(zhuǎn)換為日 1 int ms = 1537537358; QDateTime dateTime = QDateTime::fromTime_t(ms); QString str = dateTime.toString("yyyy-MM-dd hh:mm:ss");
將當(dāng)前時(shí)間轉(zhuǎn)化為時(shí)間戳:
QDateTime begin_time = QDateTime::currentDateTime();//獲取系統(tǒng)現(xiàn)在的時(shí)間 uint stime = begin_time.toTime_t();
獲取時(shí)間的前一天:
QString str = "2019-03-01 12:00:01"; QDateTime begin_time = QDateTime::fromString(str, "yyyy-MM-dd hh:mm:ss"); QString str= begin_time .addDays(-1).toString("yyyy-MM-dd hh:mm:ss");//獲取前一天時(shí)間
負(fù)數(shù)為之前的時(shí)間正數(shù)為之后的時(shí)間同時(shí)還有addMonths(int months)、addYears(int years)、addSecs(qint64 secs)、addMSecs(qint64 msecs) 等
到此這篇關(guān)于一問(wèn)學(xué)會(huì)QT時(shí)間類(lèi)的文章就介紹到這了,更多相關(guān)QT時(shí)間類(lèi)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C生萬(wàn)物C語(yǔ)言宏將整數(shù)二進(jìn)制位的奇偶數(shù)位交換
這篇文章主要為大家介紹了C生萬(wàn)物C語(yǔ)言使用宏將整數(shù)二進(jìn)制位的奇偶數(shù)位交換示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Qt編寫(xiě)地圖遷徙圖的實(shí)現(xiàn)示例
本文主要介紹了Qt編寫(xiě)地圖遷徙圖的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12Qt中Tab與Tree組件實(shí)現(xiàn)分頁(yè)菜單
本文主要介紹tabWidget選擇夾組件與TreeWidget樹(shù)形選擇組件的常用方法及靈活運(yùn)用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12淺談c++調(diào)用python鏈接的問(wèn)題及解決方法
下面小編就為大家?guī)?lái)一篇淺談c++調(diào)用python鏈接的問(wèn)題及解決方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03C語(yǔ)言實(shí)現(xiàn)掃雷游戲詳細(xì)流程
windows自帶的游戲《掃雷》是陪伴了無(wú)數(shù)人的經(jīng)典游戲,本文將利用C語(yǔ)言實(shí)現(xiàn)這一經(jīng)典的游戲,文中的示例代碼講解詳細(xì),感興趣的可以學(xué)習(xí)一下2022-05-05