如何验证检查日期时间输入是否符合 ISO 8601

Chr*_*her 3 c# validation datetime iso8601

我尝试验证输入,然后我可以获得我想要的输入。

例子:

if (string != validate(string)) 
       then not valid
else 
       then valid
Run Code Online (Sandbox Code Playgroud)

输入和预期输出

2017-03-17T09:44:18.000+07:00 == valid

2017-03-17 09:44:18 == not valid
Run Code Online (Sandbox Code Playgroud)

Pra*_*kar 6

要检查 valid DateTime,您需要正确的DateTime格式(即"yyyy-MM-ddTHH:mm:ss.fffzzz")并用于DateTime.TryParseExact() 验证您的日期时间字符串,

尝试下面的代码来验证您的日期时间字符串,

 public void ValidateDateTimeString(string datetime)
 {
        DateTime result = new DateTime(); //If Parsing succeed, it will store date in result variable.
        if(DateTime.TryParseExact(datetime, "yyyy-MM-ddTHH:mm:ss.fffzzz", CultureInfo.InvariantCulture, DateTimeStyles.None, out result))
            Console.WriteLine("Valid date String");
        else
            Console.WriteLine("Invalid date string");
 }
Run Code Online (Sandbox Code Playgroud)

在线尝试一下