2012-09-16 106 views
0

我目前正在研究c#應用程序,並使用時代時間戳並將其轉換回正常的日期和時間。除了考慮夏令時之外,現在它將時間推遲1小時,這非常有效。如何根據需要找出用戶是否處於夏令時的時區,並根據需要更正時間。從考慮夏令時的時代獲取日期和時間

感謝您提供的任何幫助。

回答

4

您還沒有指定如何從曆元時間戳轉換爲DateTime,但曆元時間戳是自1970-01-01 00:00:00 UTC以來經過的秒數,所以我假設您有一個UTC DateTime。您可以使用此代碼轉換到這個本地時間戳服用夏令考慮:

var date = DateTime.UtcNow; // Should be created from epoch time stamp. 
var localDate = date.ToLocalTime(); 

重要的是,該DateTimeKindLocal。如果不是這種情況,你可以自己修改:

var date = DateTime.Now; // Should be created from epoch time stamp. 
date = DateTime.SpecifyKind(date, DateTimeKind.Utc); 
var localDate = date.ToLocalTime(); 

在Windows上的轉換是基於執行代碼的當前用戶的時區和夏令設置。

相關問題