C#,使用DateTime.ParseExact进行数据解析错误

时间:2013-04-04 10:19:10

标签: c# parsing exception datetime string-formatting

我有一个字符串Value = "12/11/2013"并尝试使用

解析它
DateTime.ParseExact(Value, "dd/MM/yyyy", null);

但有一个例外FormatException并且无法解决原因。

3 个答案:

答案 0 :(得分:5)

变化:

DateTime.ParseExact(Value, "dd/MM/yyyy", null);

要:

DateTime.ParseExact(Value, "dd/MM/yyyy", CultureInfo.InvariantCulture);

答案 1 :(得分:3)

您的个人资料显示您位于be-By culture之下,这就是您获得例外的原因。以下代码将产生相同的异常。

System.Threading.Thread.CurrentThread.CurrentCulture = new CultureInfo("be-BY");
string Value = "12/11/2013";
DateTime dt = DateTime.ParseExact(Value, "dd/MM/yyyy", null);

要使用CultureInfo.InvariantCulture来解决异常,例如:

DateTime dt = DateTime.ParseExact(Value, "dd/MM/yyyy", CultureInfo.InvariantCulture);

答案 2 :(得分:-1)

你可以试试这个:

DateTime.ParseExact(Value, "dd'/'MM'/'yyyy", null);