2017-09-20 45 views
-2

假設我更改系統日期和時間。當我在Java中使用DateCalendar對象時,我得到的修改/修改時間不正確。有沒有辦法在java中獲取未修改的日期和時間?

我需要確切的本地時間,而不是修改時間。

long millis = System.currentTimeMillis(); 
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a");   
Date date = new Date(millis); 
System.out.println(dateFormat.format(date)); 
+3

然後不要修改時間。 – Kayaman

+0

從服務器下載它在這個問題中完成:https://stackoverflow.com/questions/7081262/getting-time-from-public-time-server-using-timetcpclient –

+0

@FrancescoSerra,這與特定的服務器正常工作。我認爲服務器應該支持NTP來獲得上面的代碼。 雖然我有一臺服務器,但是我沒有收到任何回報。 我該怎麼做才能從我的服務器獲得時間? – Sudeep

回答

0

好吧,我想你可以查詢一些遠程服務器/服務,以獲得正確的時間,然後將其轉換到本地區域(如果需要)。

但是因爲System.currentTimeMillis()使用系統的日期和時間,所以使用這段代碼時根據specifications得到的結果是正確的。請閱讀this SO post以獲取關於內部工作原理的更詳細說明。

相關問題