首页编程java编程java检测日期是否正确的是什么 使用Java如何验证所以日期是否正确

java检测日期是否正确的是什么 使用Java如何验证所以日期是否正确

编程之家2023-10-13100次浏览

大家好,今天小编来为大家解答java检测日期是否正确的是什么这个问题,使用Java如何验证所以日期是否正确很多人还不知道,现在让我们一起来看看吧!

java检测日期是否正确的是什么 使用Java如何验证所以日期是否正确

java中怎么做到判断输入的日期是否合法

Java为了支持多语言,没有固定的日期格式。你需要根据自己的需要指定日期格式,然后用DateFormat类或者SimpleDateFormat类来判断是否是正确的日期格式。下面的例子供参考。更详细的内容(比如yyyy,MM,dd各代表什么)可以参考javadoc。

public class DateUtil

{

java检测日期是否正确的是什么 使用Java如何验证所以日期是否正确

private static final SimpleDateFormat dateFormat= null;

static

{

java检测日期是否正确的是什么 使用Java如何验证所以日期是否正确

//指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;

dateFormat= new SimpleDateFormat("yyyy/MM/dd");

//设置lenient为false.否则SimpleDateFormat会比较宽松地验证日期,比如2007/02/29会被接受,并转换成2007/03/01

dateFormat.setLenient(false);

}

public static boolean isValidDate(String s)

{

try

{

dateFormat.parse(s);

return true;

}

catch(Exception e)

{

//如果throw java.text.ParseException或者NullPointerException,就说明格式不对

return false;

}

}

//下面这个方法则可以将一个日期按照你指定的格式输出

public static String formatDate(Date d)

{

return dateFormat.format(d);

}

}

java 中的日期怎么判断是什么格式的

1、Date是没有格式的。

Date是一个包装了毫秒值的瘦包装器,表示自 1970年 1月 1日 00:00:00 GMT以来经过的毫秒数。

2、那么我们通常说的日期格式是怎么回事呢?

我们说的日期格式,是将Date,即是毫秒数按照一定的格式展示给我们,展示出来的值是【String字符串】而不是【Date日期】

所以,你可以将Date转化为任意你要的格式

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

Java为了支持多语言,没有固定的日期格式。你需要根据自己的需要指定日期格式,然后用DateFormat类或者SimpleDateFormat类来判断是否是正确的日期格式。下面的例子供参考。更详细的内容(比如yyyy,MM,dd各代表什么)可以参考javadoc。

public class DateUtil

{

private static final SimpleDateFormat dateFormat= null;

static

{

//指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;

dateFormat= new SimpleDateFormat("yyyy/MM/dd");

//设置lenient为false.否则SimpleDateFormat会比较宽松地验证日期,比如2007/02/29会被接受,并转换成2007/03/01

dateFormat.setLenient(false);

}

public static boolean isValidDate(String s)

{

try

{

dateFormat.parse(s);

return true;

}

catch(Exception e)

{

//如果throw java.text.ParseException或者NullPointerException,就说明格式不对

return false;

}

}

//下面这个方法则可以将一个日期按照你指定的格式输出

public static String formatDate(Date d)

{

return dateFormat.format(d);

}

}

java判断是否是日期

楼主提出的问题有点片面,我的理解是,你是不是想判断字符串是不是日期格式?如果已经是日期类型,那就不需要判断了,对把。判断给定字符串是不是日期我给你提供两种解决思路,一种是用正则,代码我给你写好了。

publicbooleanisDate(Stringdate){

/**

*判断日期格式和范围

*/

Stringrexp="^((\\d{2}(([02468][048])|([13579][26]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])))))|(\\d{2}(([02468][1235679])|([13579][01345789]))[\\-\\/\\s]?((((0?[13578])|(1[02]))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\\-\\/\\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\\-\\/\\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))";

Patternpat=Pattern.compile(rexp);

Matchermat=pat.matcher(date);

booleandateType=mat.matches();

returndateType;

}

参数就是你要判断的日期字符串,返回布尔值;

另一种方式就是:玩字符串正则才是王道嘛!希望采纳

publicbooleanisValidDate(Stringstr){

booleanconvertSuccess=true;

//指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写;

//如果想判断格式为yyyy-MM-dd,需要写成-分隔符的形式

SimpleDateFormatformat=newSimpleDateFormat("yyyy/MM/ddHH:mm");

try{

format.setLenient(false);

format.parse(str);

}catch(ParseExceptione){

//e.printStackTrace();

//如果抛出ParseException或者NullPointerException,就说明格式不对

convertSuccess=false;

}

returnconvertSuccess;

}

推荐使用正则,

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

java 什么叫扩展性,java 编程中 可扩展性是什么意思java ui是什么?学习ui设计跟java开发,哪个更好呢