-2

//错误字符串日期

string s = "2012-4-5-02";
DateTime dt;
if (DateTime.TryParse(s,out dt))
    MessageBox.Show(dt.ToString("yyyy-MM-dd"));
else
    MessageBox.Show("error date");

// output : 2012-04-05 // 为什么能输出好的日期格式?不是显示“错误日期”。

4

2 回答 2

9

TryParse并且Parse相对宽松——比我个人喜欢的宽松。

如果您想要更严格的解析过程,请使用DateTime.TryParseExact.

于 2012-04-12T15:58:23.433 回答
4

如果您希望它无法将明确的日期格式传递给TryParseExact,否则DateTime将对您的日期可能意味着什么做出最好的猜测,然后将其吐出。

于 2012-04-12T15:58:20.797 回答