ParseExact 允许你告诉解析器日期的格式。所以在你的例子中你说它是 yyyy/MM/dd 所以你应该有像“2012/05/18”这样的日期设置才能正确解析。
这是示例。
var date = "05/18/2012";
var date2 = "2012/05/18";
var pDate = DateTime.Parse(date);
var pDate2 = DateTime.ParseExact(date2, "yyyy/MM/dd", null);
Console.WriteLine("Normal Date Formated: " + pDate.ToString("yyyy/MM/dd"));
Console.WriteLine("Your Format, Parsed: " + pDate2.ToShortDateString());
Console.WriteLine("DateTime.Now Formatted: " + DateTime.Now.ToString("yyyy/MM/dd"));
输出
Normal Date Formated: 2012/05/18
Your Format, Parsed: 5/18/2012
DateTime.Now Formatted: 2012/09/18