我正在尝试将以下字符串解析为DateTime:
“04-03-2008-16-18-08”
为了简化我已编写的单元测试,它始终抛出异常“System.FormatException:String未被识别为有效的DateTime。”
[TestMethod]
public void TemporaryDateTimeParseTest()
{
DateTime.ParseExact("04-03-2008-16-18-08", "dd-MM-yyyy-hh-mm-ss", null);
}
格式应为日 - 月 - 年 - 小时 - 分 - 秒(从上面可以看出)。根据MSDN对我的描述似乎是对的。我错过了什么?
我见过人们说ParseExact很尴尬,如果这是错误的方法,我怎么能用常规的Parse方法来获取这种格式呢?
答案 0 :(得分:7)
您需要使用HH
24小时制而非hh
制作12小时制。
答案 1 :(得分:2)
您使用12小时格式表示小时,而不是24小时格式。将您的电话改为:
DateTime.ParseExact("04-03-2008-16-18-08", "dd-MM-yyyy-HH-mm-ss", null);