本篇文章给大家谈谈java日期判断合法,以及java判断日期相差多少天对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
1、java中如何判断输入的日期是否合法?2、JAVA如何判断一个字符串是不是一个合法的日期格式?3、使用Java如何验证所以日期是否正确?4、java判断日期是否合法5、JAVA 判断一个字符串是不是一个合法的日期格式6、java中怎么做到判断输入的日期是否合法
java中如何判断输入的日期是否合法?
import java.util.*;
import java.util.regex.*;
import java.text.*;
/** 这个是按照楼主的描述使用通过判断字符验证时间合法性 */
public class DateUtils2 {
//测试代码 begin
public static void main(String[] s){
//以下是测试代码
test(“20099-1-1”);
test(“20099-100-1”);
test(“20099-1-100”);
test(“2009-1-1”);
test(“2009-1-31”);
test(“2009-2-28”);
test(“2009-2-29”);
test(“2008-2-29”);
}
private static void test(String stringdate){
System.out.println(“输入[” + stringdate + “]是否合法:” + validate(stringdate));
}
//测试代码 end
//==
/** 判断主方法 */
public static boolean validate(String dateString){
//使用正则表达式 测试 字符 符合 dddd-dd-dd 的格式(d表示数字)
Pattern p = Pattern.compile(“\\d{4}+[-]\\d{1,2}+[-]\\d{1,2}+”);
Matcher m = p.matcher(dateString);
if(!m.matches()){return false;}
//得到年月日
String[] array = dateString.split(“-“);
int year = Integer.valueOf(array[0]);
int month = Integer.valueOf(array[1]);
int day = Integer.valueOf(array[2]);
if(month1 || month12){return false;}
int[] monthLengths = new int[]{0, 31, -1, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if(isLeapYear(year)){
monthLengths[2] = 29;
}else{
monthLengths[2] = 28;
}
int monthLength = monthLengths[month];
if(day1 || daymonthLength){
return false;
}
return true;
}
/** 是否是闰年 */
private static boolean isLeapYear(int year){
return ((year % 4 == 0 year % 100 != 0) || year % 400 == 0) ;
}
}
copy的 刚好和你的问题一样~~~~~~~
JAVA如何判断一个字符串是不是一个合法的日期格式?
Java为了支持多语言,没有固定的日期格式。你需要根据自己的需要指定日期格式,然后用DateFormat类或者SimpleDateFormat类来判断是否是正确的日期格式。
下面的例子供参考。更详细的内容可以参考javadoc。
public class DateUtil
{
private static final SimpleDateFormat dateFormat = null;
static
{
dateFormat = new SimpleDateFormat(“yyyy/MM/dd”);
dateFormat.setLenient(false);
}
public static boolean isValidDate(String s)
{
try
{
dateFormat.parse(s);
return true;
}
catch (Exception e)
{
return false;
}
}
public static String formatDate(Date d)
{
return dateFormat.format(d);
}
}
使用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判断日期是否合法
public class DateUtil
{
private static final SimpleDateFormat dateFormat = null;
static
{
dateFormat = new SimpleDateFormat(“yyyy/MM/dd”);
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;
}
}
JAVA 判断一个字符串是不是一个合法的日期格式
字符串匹配日期类型的时候局限性很大,需要给定具体的日期格式才行,比如匹配”yyyy/MM/dd hh:mm:ss”类型的就是
//方法
public static boolean checkDate(String date){
try {
Date d=new SimpleDateFormat(“yyyy/MM/dd hh:mm:ss”).parse(date);
} catch (ParseException e) {
return false;
}
return true;
}
//测试方法
public static void main(String[] args) {
System.out.println(Test3.checkDate(“2017/10/1 2:20:20”));
}
//运行结果
true
可能有更好的方法,这只是我能想到的
java中怎么做到判断输入的日期是否合法
先用正则表达式判断格式是否正确。
如果格式正确则进行下一步,用“-”split字符串,得到3个字符串,再用一系列if else语句判断大小月天数
java日期判断合法的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java判断日期相差多少天、java日期判断合法的信息别忘了在本站进行查找喔。