如何解析最终包含GMT的日期时间字符串作为其时区?

时间:2013-10-25 09:30:34

标签: c# .net datetime

我的日期时间格式如下:2013年9月3日星期三02:05:50 GMT

现在,当我尝试使用掩码将此字符串解析为日期时间对象时,我得到了一个形式感知

DateTime parsed = DateTime.ParseExact("Wed, 03 September 2013 02:05:50 GMT", "ddd, dd MMMM yyyy HH:mm:ss zzz", CultureInfo.InvariantCulture);

我确实使用上面的掩码检查了 DateTime.Now ,它与我想要解析的日期相匹配。我该如何解析这个日期?

2 个答案:

答案 0 :(得分:13)

试试这个:

DateTime parsed = DateTime.ParseExact("Tue, 03 September 2013 02:05:50 GMT", 
                                      "ddd, dd MMMM yyyy HH:mm:ss Z", 
                                       CultureInfo.InvariantCulture);

你应该使用Z作为“GMT”的utc。而9月3日是在星期二。

答案 1 :(得分:2)

您可以尝试:

var input = "Tue, 03 September 2013 02:05:50 GMT";
var parsed = DateTime.ParseExact(input,
    "ddd, dd MMMM yyyy HH':'mm':'ss 'GMT'",
    CultureInfo.InvariantCulture);
Console.WriteLine(parsed);
Console.WriteLine(parsed.ToLocalTime());