将日期字符串转换为DateTime

时间:2014-01-22 10:58:23

标签: c# asp.net datetime

如何从字符串中获取DateTime :(我不知道它是什么格式)

Wed Jan 08 2014 00:00:00 GMT+0100 (Central Europe Standard Time)

To DateTime?

2 个答案:

答案 0 :(得分:2)

使用DateTime.TryParseExact将字符串解析为DateTime对象。

您可以根据要解析的格式传递。就像你的情况一样,你会使用

string dateString = "Wed Jan 08 2014 00:00:00 GMT+0100";
dateString = dateString.Replace("GMT+0100", "+01:00");  // to remove the timezone abbreviation and replace with offset value.

string format = "ddd MMM dd yyyy HH:mm:ss zzz";
DateTime dt;
DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt);

答案 1 :(得分:0)

如果您不知道它是什么格式,那么您如何期望解析它?你怎么知道2014-01-02的日期是指2月1日还是1月2日?

你可以使用一些TryParseExact,只是为了排除它绝对不可能的日期(2014-13-12只能是12月13日),但你仍然留下那些可以被解析并且有效的字符串两个约会。