valid date check with DateTime.TryParse method

匆匆过客 提交于 2019-12-03 19:55:55

问题


I am using Datetime.TryParse method to check the valid datetime. the input date string would be any string data. but is returning false as the specify date in invalid.

DateTime fromDateValue;
if (DateTime.TryParse("15/07/2012", out fromDateValue))
{
    //do for valid date
}
else
{
    //do for in-valid date
}

Edit: i missed. i need to check the valid date with time as "15/07/2012 12:00:00".

Any suggestions are welcome....


回答1:


You could use the TryParseExact method which allows you to pass a collection of possible formats that you want to support. The TryParse method is culture dependent so be very careful if you decide to use it.

So for example:

DateTime fromDateValue;
string s = "15/07/2012";
var formats = new[] { "dd/MM/yyyy", "yyyy-MM-dd" };
if (DateTime.TryParseExact(s, formats, CultureInfo.InvariantCulture, DateTimeStyles.None, out fromDateValue))
{
    // do for valid date
}
else
{
    // do for invalid date
}



回答2:


You should be using TryParseExact as you seem to have the format fixed in your case.

Something like can also work for you

DateTime.ParseExact([yourdatehere],
                    new[] { "dd/MM/yyyy", "dd/M/yyyy" },
                    CultureInfo.InvariantCulture,
                    DateTimeStyles.None);



回答3:


As the others said, you can use TryParseExact.

For more informations and the use with the time, you can check the MSDN Documentation



来源:https://stackoverflow.com/questions/11310439/valid-date-check-with-datetime-tryparse-method

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!