Qt:獲取日期和時間
前言
一般而言,作業系統(Windows/Linux/Mac)的核心函式都會給出了日期時間的相關係統庫函式,Qt在此基礎上進行了封裝,提供了獲取時間和日期的3個相關類——QDateTime、QDate、QTime,使其在Qt內部空間之間的使用更加便捷。
QDateTime獲取日期和時間
QDateTime顧名思義,獲取日期和時間,呼叫靜態成員函式可直接獲取字串值,同時可以控制顯示格式:
QDateTime dateTime(QDateTime::currentDateTime());
QString qStr = dateTime.toString("yyy-MM-dd hh:mm::ss ddd");
顯示效果如下:
其中,控制字串的格式如下表:
格式 | 備註 |
---|---|
d | 天數,範圍1~31 |
dd | 天數,範圍01~31,字首自動補一位零 |
ddd | 星期天數縮寫,以本地作業系統為準(如,漢字的週一到週日,英文的Mon.到Sun.) |
dddd | 星期天數全程,以本地作業系統為準(如,漢字的星期一到星期日,英文的Monday到Sunday) |
M | 月數,範圍1~12 |
MM | 月數,範圍01~12,自動補一位零 |
MMM | 月數名稱縮寫,預設本地作業系統值(如,漢字的1月到12月,英文的Ja) |
MMMM | 月數名稱全程,預設本地作業系統值(如,漢字的一月到十二月) |
yy | 年份的後兩位,範圍00~99 |
yyyy | 年份的四位全稱 |
h | 沒有補零的小時數,範圍0~23或1 ~12 |
hh | 自動補零的小時數,範圍00~23或01 ~12 |
H | 沒有補零的小時數,範圍0~23(即便12小時制也是如此) |
HH | 自動補零的小時數,範圍0~23(即便12小時制也是如此) |
m | 分鐘數,範圍0~59 |
mm | 自動補零分鐘數,範圍00~59 |
s | 秒鐘數,範圍0~59 |
ss | 自動補零秒鐘數,範圍00~59 |
z | 秒鐘的小數部分(毫秒),精確範圍 0-999 |
zzz | 秒鐘的小數部分,自動補零3位,範圍000-999 |
AP(A) | 使用12小時制,顯示AM/PM |
ap(a) | 使用12小時制,顯示am/pm |
t | 時區 |
以上任意欄位可以隨機排序,沒有任何限制,但是要注意有大小寫之分。
QDate獲取日期
QDate顧名思義,即獲取日期。呼叫靜態成員函式可直接獲取日期年月日的整型值:
QDate date(QDate::currentDate());
int year = date.year();
int month = date.month();
int day = date.day();
QTime獲取時間
QDate顧名思義,即獲取時間。呼叫靜態成員函式可直接獲取時間時分秒的整型值:
QTime time(QTime::currentTime());
int hour = time.hour();
int minute = time.minute();
int second = time.second();
總結
QDateTime、QDate、QTime的強大不止於此,Qt官方提供了各種各種基於日期和時間的操作,如果感興趣的話,可以從官方API或者原始碼的角度去學習和解讀,在此不再累述。
相關文章
- QT獲取日期,時間,星期QT
- Qt獲取當前日期與時間QT
- java獲取日期和時間Java
- QT入門系列(7):獲取系統時間 日期時間格式QT
- 《Qt5+QDate和QTime獲取當前系統日期和時間》QT
- js獲取指定時間日期和當前時間日期的相差多少時間JS
- Qt獲取當前時間QT
- Qt 獲取當前時間QT
- Qt 獲取程式編譯時間QT編譯
- QT獲取系統當前時間QT
- 分享[ASP.NET]//獲取日期+時間ASP.NET
- javascript獲取本地時間日期程式碼JavaScript
- 46. Kotlin獲取日期時間Kotlin
- javascript時間日期格式化和獲取封裝類JavaScript封裝
- 細說PHP筆記08(第12章)--日期和時間,建立時間戳,mktime轉換unix時間戳,獲取字串時間,獲得日期和時間資訊,日期和時間格式化輸出,microtime()獲取微秒數PHP筆記時間戳字串
- JavaScript 獲取指定時間前幾天日期JavaScript
- android系統日期時間的獲取Android
- C#獲取當前日期時間(轉)C#
- js date物件的獲取時間日期常用方法JS物件
- Js獲取當前日期時間及其它操作JS
- QT顯示當前日期時間QT
- Android開發:獲取當前系統時間和日期的方法Android
- java獲取日期差以及幾天前和幾天後的時間Java
- 日期和時間
- Qt獲取當前時間的兩種方式筆記QT筆記
- java獲取指定日期之前或之後的時間Java
- js獲取時間日期中的年月日等部分JS
- JavaScript獲取兩個日期之間所有的日期JavaScript
- python獲取網路時間和本地時間Python
- Qt學習(5)獲取當前系統時間-實時顯示當前時間QT
- Java日期和時間Java
- 根據時差獲取世界各地日期時間程式碼例項
- 使用 Carbon 獲取指定時間範圍內的日期陣列陣列
- 關於 Date 函式獲取各類時間/日期/天數函式
- Windows批處理中獲取系統日期、時間戳記Windows時間戳
- C++ Qt開發:DateTime日期時間元件C++QT元件
- Qt中利用定時器QTimer實時顯示當前日期和時間QT定時器
- 直播原始碼,獲取兩個日期之間的所有日期原始碼