linux 下Qt 如何修改系統時間

2021-08-29 23:23:10 字數 993 閱讀 3025

qt 提供日期時間的類有 qdate qtime 和qdatetime,這三個類。

可以通過三個靜態函式來獲取

1.qdate::currentdate() 來獲取當前系統的日期

2.qdate::currenttime()來獲取當前系統的時間

3.qdatetime::currenttime()來獲取當前系統的日期和時間。

在linux 上可以使用date命令來設定系統設定時間,例如

date -s 「20181025 17:19:23」

這樣就可以把當前的系統時間設定成2023年10月25分17時19分23秒了。

但是如何在qt用使用函式來設定系統時間呢,很遺憾的是qt所提供的這三個類qdate,qtime ,qdatetime並沒有提供相應的函式藉口來給開發人員來設定系統的時間。所以我們在qt中想要設定系統時間,只有通過date命令來設定了,例如:

char * cmd = date -s "20181025 17:19:23" 

system(cmd);

在linux系統上,時鐘分為系統時鐘和硬體時鐘兩種。

硬體時鐘是依靠bios電池來維持技術,而我們平時開發的時候基本上用到的是系統時鐘,如一些函式,一些類,都是使用系統時鐘的。當我們系統重啟後,硬體時鐘就會自動同步到系統時鐘(硬體時鐘寫入到系統時鐘),正因為這樣,我們的系統時鐘才能保持連續性(比如你電腦關機一段時間後再開機,電腦顯示的時間,還是正確的)。

那麼,當我們設定了系統時鐘後,系統關機一段時間,然後在重新開機,你會發現系統顯示的時間並不正確了,這是因為你在設定完系統時鐘後,沒有把系統時鐘同步到硬體時鐘上,所以系統在重啟後,在讀取硬體時鐘的時候,還是讀取到以前的那個硬體時鐘,所以才導致系統時間顯示不正確。

所以,我們每一次設定完系統時鐘後,都要進行系統時鐘同步到硬體時鐘的操作(系統時鐘寫入到硬體時鐘)

hwclock -w  // 執行命令
這樣時間就設定好了

Linux系統下如何修改ip位址

1.登陸系統,輸入 ifconfig 可以檢視到當前本機的ip位址資訊。2.設定臨時ip位址。ifconfig eth0 192.168.137.66 3.永久修改ip位址。vi etc sysconfig network scripts ifcfg eth0 device eth0 網絡卡對應的裝...

ARM下如何修改linux系統時間

問 linux下如何儲存設定的系統時間?答 分以下步驟進行 date mmddhhmm cc yy ss 例如 date 010410462008 2 將系統時間寫入rtc hwclock w 讀出檢驗一下,寫入是否正確 hwclock r 3 修改開發板根檔案系統中的 etc init.d rcs...

ARM下如何修改linux系統時間

問 linux下如何儲存設定的系統時間?答 分以下步驟進行 date mmddhhmm cc yy ss 例如 date 010410462008 2 將系統時間寫入rtc hwclock w 讀出檢驗一下,寫入是否正確 hwclock r 3 修改開發板根檔案系統中的 etc init.d rcs...