如何在C#中验证日期格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在C#中验证日期格式相关的知识,希望对你有一定的参考价值。

我想检查给定的字符串是否为有效的.net日期格式。

所以我有以下功能可以检查日期格式是否正确

    public void IsValidDateFormat(string dateFormat)
    
        var flag = true;
        try
        
            DateTime.ParseExact(DateTime.Now.ToString(),
                dateFormat,
                System.Globalization.CultureInfo.InvariantCulture);
        
        catch (Exception ex)
        
            flag = false;
        

       return flag;
    

但是,对于有效格式,它也会返回false

dateFormat = ,, =>返回false =>通过dateFormat = someinvalidformat=>返回false =>通过dateFormat = MM/dd/yyyy=>返回false =>未通过

因此MM/dd/yyyy是有效的日期格式。但是方法返回false。

是否有更好的方法来检查给定的日期格式是否为有效的.Net日期格式?

更新1我了解为什么方法对于MM/dd/yyyy或其他有效日期格式失败。我不是问为什么失败了。 MM/dd/yyyy只是我在此处使用的常见有效日期时间格式。我正在寻找一种检查给定日期格式是否为有效的.Net日期格式的方法。因此它可以是任何.Net日期格式。

答案

为什么没有TryParse()或确切的版本? https://docs.microsoft.com/es-es/dotnet/api/system.datetime.tryparse?view=netframework-4.8

如果系统可以解析,则返回true。

它的方法与您的方法“相同”。

以上是关于如何在C#中验证日期格式的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PHP 中使用 jquery 验证 'dd/mm/yyyy HH:ii P' 格式的日期时间?

Oracle 日期格式验证 [重复]

c语言,如何进行日期格式转换??

使用Java如何验证所以日期是不是正确

PHP入门教程之日期与时间操作技巧总结(格式化,验证,获取,转换,计算等)

java中怎么验证日期格式,要各种日期格式都能验证,代码比较简单的。