根据您的评论:
我需要声明一种格式来检查,有时日期时间格式可能不同,这就是为什么我在想有没有像我想的那样的代码。
TryParseExact
已经采用了格式。
这个简短的示例使用TryParseExact完成您想要的操作。TryParseExact
如果格式或日期错误,不会抛出异常,因此您不必担心昂贵的Try/Catch
块。相反,它会返回false
。
static void Main()
{
Console.Write(ValidateDate("ddd dd MMM h:mm tt yyyy", "Wed 10 Jul 9:30 AM 2013"));
Console.Read();
}
public static bool ValidateDate(string date, string format)
{
DateTime dateTime;
if (DateTime.TryParseExact(date, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime))
{
Console.WriteLine(dateTime);
return true;
}
else
{
Console.WriteLine("Invalid date or format");
return false;
}
}
或缩短:
public static bool ValidateDate(string date, string format)
{
DateTime dateTime;
return DateTime.TryParseExact(date, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime);
}