使用SimpleDateFormat验证日期格式

  Java中日期格式的验证有很多方式,这里介绍用 java.text.SimpleDateFormat 来实现时间验证的一种简单方式。首先我们要知道 SimpleDateFormat 对象有一个方法 void setLenient(boolean lenient) ,此方法传入一个Boolean值,表示是否是宽松的验证。当传入false时候表示验证是严格的。利用这一点我们就可以简单实现一个严格的时间格式验证。实现代码如下:

    public static boolean validDateTimeSimple(String dateTime) {
        if(dateTime == null ) {
            return false;
        }
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        df.setLenient(false);//表示严格验证

        try {
            df.parse(dateTime);
        } catch (ParseException e) {
            return false;
        }
        return true;
    }

  这种方式其实也是有弊端的,当dateTime字符串中间包含多余的空格的时候这种方式是无法辨别出来的,所以使用的时候需要注意。

原文地址:https://www.cnblogs.com/kemir1105/p/9074773.html

时间: 2024-10-10 05:12:28

使用SimpleDateFormat验证日期格式的相关文章

验证日期格式的方法

判断日期格式的验证: 除IE浏览器外,可使用Date.parse()方法,该方法传入某个日期字符串,返回从1970-1-1 00:00:00到该日期对象的毫秒数,若无法识别则返回NaN IE浏览器不支持Date.parse()方法,其解决思路如下: 将字符串手动解析为数组: 使用Date的实例化,即new Date(a,b,c),返回date对象,若无法识别,则返回Invalid Date的对象: 调用对象的toString方法,返回结果值与'Invalid Date'相等,则为不合格日期格式,

PHP 验证日期格式

使用 PHP 正则表达式来匹配日期格式 "YYYY-MM-DD": function checkDateFormat($date) { //匹配日期格式 if (preg_match ("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date, $parts)) { //检测是否为日期 if(checkdate($parts[2],$parts[3],$parts[1])) return true; else return fals

验证日期格式

function RQcheck(RQ) { var date = RQ; var result = date.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); if (result == null) return false; var d = new Date(result[1], result[3] - 1, result[4]); return (d.getFullYear() == result[1] && (d.getMonth()

使用正则表达式来验证日期格式是否为XX/XX/XXXX

验证日期的正则表达式比较全面地验证

原文:验证日期的正则表达式比较全面地验证 1.验证日期的正则表达式加入闰年的判断以及思路分析 进入正题之前,我们需要澄清两个概念: 一,什么是合法的日期范围?对于不同的应用场景,这个问题有不同的解释.这里采纳MSDN中的约定: DateTime 值类型表示值范围在公元(基督纪元)0001 年 1 月 1 日午夜 12:00:00 到公元 (C.E.) 9999 年 12 月 31 日晚上 11:59:59 之间的日期和时间. 二,关于闰年的阐释.人民教育出版社小学数学室的解释浅明易懂(media

关于Web项目里的给表单验证控件添加结束时间不得小于开始时间的验证方法,日期转换和前台显示格式之间,还有JSON取日期数据格式转换成标准日期格式的问题

项目里有些不同页面间的日期显示格式是不同的, 第一个问题: 比如我用日期控件WdatePicker.js导包后只需在input标签里加上onClick="WdatePicker()"就可以用了,但是默认是没有时分秒的,如果需要显示时分秒只需要加上WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})就行. **************************************************************************

利用SQL模糊匹配来验证字段是否是日期格式

最近需要验证数据仓库某个字段是否转化成某种日期格式,比如时间戳格式 '2016-05-03 23:21:35.0', 但是DB2不支持REGEXP_LIKE(匹配)函数,所以需要重新想其他办法. 最后使用了最常规的like来模糊匹配,虽然比不上正则匹配那么精准,但也够用了. 思路: 一个下划线代表一个字符,那'2016-05-03 23:21:35.0'可以表示成'____-__-__-__.__.__.______'. 当然这种办法比较笨,不能识别是数字还是字母还是字符,当然更好的办法是编写U

asp.net 如何验证yyyy-mm-dd格式的日期

方法一: //日期格式yyyy-mm-dd         <asp:rangevalidator   id="vldRngDate"   runat="server"   CssClass="main"   ErrorMessage="日期必须在1900~2500之间"   ControlToValidate="txtDate"   Display="None"   Minimu

java导入excel时处理日期格式(已验证ok)

在Excel中的日期格式,比如2009-12-24将其转化为数字格式时变成了40171,在用java处理的时候,读取的也将是40171.如果使用POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理.正确的处理方法是先判断单元格的类型是否则NUMERIC类型,然后再判断单元格是否为日期格式,如果是的话, 创建一个日期格式,再将单元格的内容以这个日期格式显示出来.如果单元格不是日期格式,那么则直接得到NUMERIC的值就行了.具体代码如下: