检查字符串是否包含日期

Mah*_*hai 11 .net c# datetime

给定一个字符串"15:30:20""2011-09-02 15:30:20",我怎么能动态检查,如果给定的字符串包含日期或不是?

"15:30:20" -> Not Valid

"2011-09-02 15:30:20" => Valid
Run Code Online (Sandbox Code Playgroud)

ada*_*ost 21

使用DateTime.TryParseExact方法.

string []format = new string []{"yyyy-MM-dd HH:mm:ss"};
string value = "2011-09-02 15:30:20";
DateTime datetime;

if (DateTime.TryParseExact(value, format, System.Globalization.CultureInfo.InvariantCulture,System.Globalization.DateTimeStyles.NoCurrentDateDefault  , out datetime))
   Console.WriteLine("Valid  : " + datetime);
else
  Console.WriteLine("Invalid");
Run Code Online (Sandbox Code Playgroud)


Dom*_*nik 13

您可以使用

bool b = DateTime.TryParseExact("15:30:20", "yyyy-MM-dd HH:mm:ss",CultureInfo.InvariantCulture,DateTimeStyles.AssumeLocal,out datetime);
Run Code Online (Sandbox Code Playgroud)

检查字符串是否可解析为DateTime.