DateTime转换异常

时间:2012-11-21 07:23:44

标签: c# datetime

这是代码

String date = "1980/1/1"; 
DateTime dateTime = DateTime.ParseExact(date, "yyyy/MM/DD", null);
// I have also tried 
// DateTime dateTime = DateTime.ParseExact(date, "yyyy/MM/DD", CultureInfo.InvariantCulture);

这是例外

  

字符串未被识别为有效的DateTime。

更新

使用以下代码获取相同的错误

 DateTime dateTime = DateTime.ParseExact(date, "yyyy/M/D", null);

3 个答案:

答案 0 :(得分:2)

使用单M和单d

DateTime dateTime = DateTime.ParseExact(date, "yyyy/M/d", null);

M个月01112,同样单d将照顾1的一天至31,包括0109

您可能会看到:Custom Date and Time Format Strings - MSDN

答案 1 :(得分:1)

仅使用yyyy/M/D。它引发了一个例外,因为它预计yyyy/01/01个月和日两位数。

DateTime dateTime = DateTime.ParseExact(date, "yyyy/M/d", null);

答案 2 :(得分:1)

试试这个(测试过)

String date = "1980/1/1";
DateTime dateTime = DateTime.ParseExact(date, "yyyy'/'M'/'d",null);

字符斜线在单个qoutation之间。