我收到了以下形式的字符串:
“2011-10-12T11:55:34.803EST”
“2011-10-05T16:58:05.043GMT”
我想将这些值存储为DateTime对象,但是简单的DateTime.Parse()不起作用。无论如何我可以将这些字符串转换为DateTime对象吗?据我所知,DateTime不知道时区。
答案 0 :(得分:1)
你可以用z替换GMT,它会起作用:
string date = "2011-10-05T16:58:05.043GMT".Replace("GMT", "z");
Console.WriteLine(DateTime.Parse(date));
祖鲁时间
答案 1 :(得分:0)
+1到IAbstractDownvoteFactor - Z是最好的区域。
您的约会时间与Iso8601差不多,但有自定义时区(http://en.wikipedia.org/wiki/ISO_8601#Time_zone_designators了解初始信息)。
使用时区非常困难,因为它们的规则可能会改变,有些可能会出现和消失。如果您可以影响传入格式 - 请求时区的UTC(Z)或绝对偏移(+08:00)。
否则,您需要确定需要支持的时区,确定是否更改了规则以及是否正确设置了夏令时区域(即适当时使用PDT / PST)。玩得开心。