DateTime.ParseExact字符串格式不断引发错误

问题描述

|| 我有一个DateTime的字符串表示形式,如下所示:
2011-05-25T16:42:17.156Z
我已经尝试了以下方法,但没有任何运气:
DateTime.ParseExact(formatted,\"yyyy-MM-ddThh:mm:ss.fffZ\",CultureInfo.CurrentCulture);
DateTime.ParseExact(formatted,\"yyyy-MM-dd hh:mm:ss.fff\",CultureInfo.CurrentCulture.DateTimeFormat.GetAllDateTimePatterns(),CultureInfo.CurrentCulture,DateTimeStyles.AssumeUniversal);
DateTime.ParseExact(formatted,DateTimeStyles.None);
所有这些都会产生错误
String was not recognized as a valid DateTime.
标准DateTime.Parse似乎可以工作,但是出于性能方面的原因,我们正在研究ParseExact。这似乎应该很简单,但似乎无法使其正常工作。     

解决方法

对于24小时格式,请使用HH代替hh。这应该工作:
DateTime.ParseExact(formatted,\"yyyy-MM-ddTHH:mm:ss.fffZ\",CultureInfo.CurrentCulture);
您确定要使用当前文化而不是不变文化吗?     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...