문자열이 정해진 날짜 포맷에 맞는지 확인해야하는 로직이 종종 필요하다
문자열이 날짜 형식인지 유효성 검사하기
/**
* 입력받은 문자열이 날짜형식으로 변환이 가능한지 확인한다.
*
* @param str2cmp 날짜형식 변환 가능여부 확인 대상
* @param dateFormat 비교할 날짜 형식
* @return
*/
public static boolean isDateFormat(String str2cmp, String dateFormat) {
try {
// 검증할 날짜 포맷 설정
SimpleDateFormat dateFormatParser = new SimpleDateFormat(dateFormat);
// parse()에 잘못된 값이 들어오면 Exception을 리턴하도록 setLenient(false) 설정
dateFormatParser.setLenient(false);
// 대상 인자 검증
dateFormatParser.parse(str2cmp);
return true;
} catch (Exception e) {
return false;
}
}
public static boolean isDateFormat(String str2cmp) {
return isDateFormat(str2cmp, "yyyyMMdd");
}
setLenient( false );로 설정하면, 잘못된 형식의 데이터가 들어올 경우 Exception을 리턴하도록 설정함.
728x90
반응형
'Language > Java' 카테고리의 다른 글
[Java] 성능을 고려한 try-catch 문 (0) | 2020.12.16 |
---|---|
[Java] Map 반복문 (0) | 2020.12.08 |
[JAVA] 구 버젼 설치 (0) | 2020.11.02 |
[Java] ArrayList Sort (0) | 2020.05.22 |