当前位置:  开发笔记 > 编程语言 > 正文

.NET 2.0 DateTime UTC转换

如何解决《.NET2.0DateTimeUTC转换》经验,为你挑选了1个好方法。

为什么ToUniversalTime函数在这里没有效果;

DateTime dt = new DateTime(2009,3,24,1,0,0,DateTimeKind.Local);
dt = dt.ToUniversalTime(); // convert BST to UTC ?
dt.ToString();

"2009年3月24日01:00:00"......错了吗?

是相同的..

DateTime dt = new DateTime(2009,3,24,1,0,0,DateTimeKind.Utc);
dt = dt.ToUniversalTime(); // nothing to do, already utc
dt.ToString();

"24/03/2009 01:00:00"......正确.

我期望对第一个示例的ToString()值进行调整,其中DateTime指定为Local将在调用ToUniversalTime()时导致相应的TimeZone计算,并且英国的时间应该导致" 24/03/2009 00:00:00"作为UTC.

但是,似乎以这种方式指定DateTimeKind会导致ToUniversalTime或ToLocalTime无法进行任何计算.



1> David M..:

你有机会在英国吗?虽然我们现在处于夏令时,但您在代码中指定的日期是在切换之前,因此英国的本地和UTC时间是相同的.如果您将四月指定为您的月份,那么您将看到一小时的差异.

推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有