2012-09-16 63 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上的转换是基于执行代码的当前用户的时区和夏令设置。

相关问题