C#中的时间转换混淆

时间:2012-10-09 15:38:42

标签: c# timezone utc

我正在C#中访问驱动程序(.sys文件)的file.LastWriteTime。 代码如下:

DateTime fileDate = FileInfo(path).LastWriteTime;
String locaZone = TimeZoneInfo.Local.DisplayName;
DateTime BinaryDate = TimeZoneInfo.ConverTimetoUtc(fileDate, TimeZoneInfo.Local);

我检查了System32中的Drivers文件夹 - 文件时间是9/27/2012 12:40:42 AM 当地时区是太平洋。

  

因此,fileDate = 9/27/2012 12:40:42 AM

     

但是,BinaryDate(转换为UTC后)= 9/27/2012 07:40:42 AM

任何人都可以请指出这里的错误 - 似乎转换没有正确发生。

理想情况下,我们应该观察BinaryDate值为> 9/27/2012 12:40:42 AM(包括DayLight Saving)

1 个答案:

答案 0 :(得分:2)

你能不能只拨打FileInfo(path).LastWriteTimeUtc