language/java
java 날짜 체크하기
CofS
2018. 2. 23. 16:16
java 날짜 체크하기
날짜를 입력받을 때 년도, 년월, 년월일 등을 입력받을 수 도 있지만
날짜의 유형에 어긋나도록 입력받을 수 도 있다.
예를들면 20182201 이런 형태는 22월이 없기 때문에 잘못 입력받은 날짜이다.
그래서 String 형태로 입력받은 날짜를 포멧별로 체크하는 함수가 필요했다.
날짜 체크 함수
1
2
3
4
5
6
7
8
9
10 |
public static boolean dateCheck(String date, String format) {
SimpleDateFormat dateFormatParser = new SimpleDateFormat(format, Locale.KOREA);
dateFormatParser.setLenient(false);
try {
dateFormatParser.parse(date);
return true;
} catch (Exception Ex) {
return false;
}
} |
cs |
1# : 날짜 체크 함수
date : 날짜, format : 포멧형식(yyyy, yyyyMM, yyyyMMdd 등등...)
2# : SimpleDateFormat 객체를 생성한다.
3# : 체크를 여유있게 하지 않겠다는 설정(관대한 체크를 false로 셋팅함)
5# : 입력받은 날짜를 parse 함
오류 발생 = 올바르지 않는 날짜임
try catch문을 활용해서 return 값을 조정
사용방법
1
2
3
4
5
6 |
System.out.println(DateUtil.dateCheck("201801", "yyyyMM"));
System.out.println(DateUtil.dateCheck("201821", "yyyyMM"));
System.out.println(DateUtil.dateCheck("20180101", "yyyyMMdd"));
System.out.println(DateUtil.dateCheck("20182101", "yyyyMMdd"));
System.out.println(DateUtil.dateCheck("20180151", "yyyyMMdd"));
System.out.println(DateUtil.dateCheck("aaaaaa", "yyyyMMdd")); |
cs |
결과
1
2
3
4
5
6 |
true
false
true
false
false
false |
cs |