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....
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
}
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);
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