我正在编写一个扩展方法,使用DateTime.TryParseExact()方法将包含日期和时间的特定字符串解析为DateTime对象.
格式的示例如下:
“2013年11月29日20:04”
我用来解析它到DateTime的代码是:
public static DateTime MyToDateTime(this string value) { DateTime converted; DateTime.TryParseExact(value,"dd MMM yyyy hh:mm",CultureInfo.InvariantCulture,DateTimeStyles.AllowWhiteSpaces,out converted); return converted; }
结果总是DateTime.Min(即0001-01-01 00:00:00.000)
我无法弄清楚我的格式字符串有什么问题.任何帮助,将不胜感激.
解决方法
来自你的评论:
>如果你想解析3个信件月使用MMM.
>如果要解析24小时格式,则应使用HH而不是hh.
试试这个:
DateTime.TryParseExact(value,"dd MMM yyyy HH:mm",out converted);