解析GMT DateTIme

时间:2014-10-03 19:43:51

标签: c# datetime

我有03-10-14 18:44:58。时间部分是GMT 其中03 =第10天=月= 14 =年,18 =小时44 =分58 =秒

我该如何解析?这就是我正在使用但不起作用的地方:

var date = "03-10-14 18:44:58";
_Packet.Time = DateTime.ParseExact(datetime, "dd-MM-yy HH:mm:ss 'GMT'", CultureInfo.CurrentCulture, DateTimeStyles.AllowWhiteSpaces);

1 个答案:

答案 0 :(得分:5)

当然它不起作用,因为解析模式与日期字符串不匹配...您的输入字符串不包含字符串GMT

请改为尝试:

var date = DateTime.ParseExact(datetime, "dd-MM-yy HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal);

在这里,我使用了AssumeUniversalAdjustToUniversal标志。一起使用,thay会产生UTC日期。

如果您想将其转换为当地时间,那么:

date = date.ToLocalTime();