java计算两天之间的天数 (前闭后开)

import java.util.*;
public class xl{
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println(“请输入日期时间格式为:xxxx年xx月xx日 xx时xx分xx秒”);
String str = input.nextLine();
if (!fang3(str)) {
System.out.println(fang3(str));
} else {
if (!fang(str)) {
System.out.println(fang(str));
} else if (!fang2(str)) {
System.out.println(fang2(str));
} else {
int year = Integer.parseInt(str.substring(0, 4));
int month = Integer.parseInt(str.substring(5, 7));
int ri = Integer.parseInt(str.substring(8, 10));
int h = Integer.parseInt(str.substring(12, 14));
int min = Integer.parseInt(str.substring(15, 17));
int s = Integer.parseInt(str.substring(18, 20));
boolean flag = true;
if (year < 0 || month < 0 || ri < 0 || h < 0 || min < 0 || s < 0) {
flag = false;
}
if (h > 24 || min > 60 || s > 60 || month > 12 || month == 0 || ri == 0) {
flag = false;
}
System.out.println(flag);
}
}
}
public static boolean fang(String str) {
String year = str.substring(0, 4);
String month = str.substring(5, 7);
String ri = str.substring(8, 10);
String h = str.substring(12, 14);
String min = str.substring(15, 17);
String s = str.substring(18, 20);
String zong = year + month + ri + h + min + s;
boolean flag = true;
for (int i = 0; i <= zong.length() - 1; i++) {
if (zong.charAt(i) >= ‘0’ && zong.charAt(i) <= ‘9’) {
} else
flag = false;
}
return flag;
}

public static boolean fang2(String str) {
	boolean flag = true;
	int year = Integer.parseInt(str.substring(0, 4));
	int month = Integer.parseInt(str.substring(5, 7));
	int ri = Integer.parseInt(str.substring(8, 10));
	if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
		if (month == 2) {
			if (ri > 29) {
				flag = false;
			}
		}
	} else {
		if (month == 2) {
			if (ri > 28) {
				flag = false;
			}
		}
	}
	if (month == 4 || month == 6 || month == 9 || month == 11) {
		if (ri > 30) {
			flag = false;
		}
	} else {
		if (ri > 31) {
			flag = false;
		}
	}
	return flag;
}

public static boolean fang3(String str) {
	boolean flag = true;
	String 年 = str.substring(4, 5);
	String 月 = str.substring(7, 8);
	String 日 = str.substring(10, 11);
	String 时 = str.substring(14, 15);
	String 分 = str.substring(17, 18);
	String 秒 = str.substring(20);
	String 空格 = str.substring(11, 12);
	if (年.equals("年") && 月.equals("月") && 日.equals("日") && 时.equals("时") && 分.equals("分") && 秒.equals("秒")
			&& 空格.equals(" ")) {
	} else {
		flag = false;
	}
	if (str.length() != 21) {
		flag = false;
	}
	return flag;
}

}


作者:JxMx
供大家参考

你可能感兴趣的:(java学习)