【发布时间】:2011-10-31 19:43:45
【问题描述】:
我正在尝试将 String 转换为 Datetime 对象而不对其进行修改并向 Datetime 对象添加额外的小时/偏移量。
这是代码:
string dateStr = "2011-03-18T12:07:00.000+10:00"; //Convert this string to datetime AS IS
DateTime date = Convert.ToDateTime(dateStr);
Console.WriteLine("Original string: " + dateStr);
Console.WriteLine("date toString: " + date.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss.fffK"));
输出:
Original string: 2011-03-18T12:07:00.000+10:00
date toString: 2011-03-18T13:07:00.000+11:00
如果有人能指出我可以如何忽略 DST,或者干脆将日期转换回我想要的 Datetime 对象,那将不胜感激。
继续修改日期时间: 我试图将 Datetime 转换回来,但我无法弄清楚如何更改 Datetime 对象中的时区,当我使用 DatetimeOffset 对象来完成这项工作时,当我调用 DatetimeOffset.Datetime 它返回没有偏移量的日期时间
【问题讨论】:
-
您使用的是什么版本的 .NET?
-
这是在 .NET 3.5 中。有没有 Jon Skeet 的 Noda Time 的 URL?
-
@Eiji, code.google.com/p/noda-time