【发布时间】:2012-10-27 07:46:34
【问题描述】:
var str = "00:00:00 02/01/1990";
var dt = DateTime.ParseExact(str, "hh:mm:ss dd/MM/yyyy", null);
以上代码抛出异常“字符串未被识别为有效的日期时间。”
我认为使用 ParseExact 并指定确切的格式就可以了。以上有什么问题?
编辑:
使用不变文化解决。感谢 cmets。
var dt = DateTime.ParseExact(str, "HH:mm:ss dd/MM/yyyy", CultureInfo.InvariantCulture);
【问题讨论】:
-
您的目标是什么框架版本?似乎适用于 4.0
-
: 和 / 字符被本地文化的时间和日期分隔字符替换,即使是 ParseExact()。因此,您必须指定一种文化以获得可重复的结果,例如不变量。