我有这行代码:C#的DateTime时区减去问题
double seconds = new DateTime(2006,7,6,12,1,0,DateTimeKind.Local).Subtract(new DateTime(1970,1,1,0,0,0,DateTimeKind.Local).TotalSeconds;
这不是正确的号码,我想,所以我尝试了以下内容:
double seconds = new DateTime(2006,7,6,12,1,0,DateTimeKind.Local).Subtract(new DateTime(1970,1,1,0,0,0,DateTimeKind.Utc).TotalSeconds;
(不同的是,在一种情况下,我使用本地时间作为时代,而另一种情况下我使用UTC)。有趣的是,他们都给我同样的价值,我不知道这是为什么。我住在格林尼治标准时间-600,所以DateTimeKind.Local实际上应该影响事情。
在此先感谢!
备案,它实际上结果是: double seconds = TimeZoneInfo.ConvertTimeToUtc(new DateTime(2006,7,6,12,1,0,DateTimeKind.Local))。Subtract(new DateTime(1970,1,1,0,0, 0,DateTimeKind.Local ).TotalSeconds – codersarepeople 2010-07-29 15:40:04