Calendar Dialog 를 이용해서 날짜를 입력받는데 연도선택하는 부분이 눈에 띄지 않아 매우 불편하다
그래서 2020-02-03 형식으로 입력하도록 만들려고 하는데
입력받은 날짜가 올바른지 검증이 필요하다
기본적인 형식뿐 아니라 2월 29일이 있는지 없는지는 알아야 한다.
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.KOREA);
sdf.setLenient(false);
sdf.parse("2020-02-12");
setLenient(false) 를 사용하면 해결 할 수 있다.
public boolean checkDate(String formDate){
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.KOREA);
sdf.setLenient(false);
sdf.parse(formDate);
return true;
} catch (ParseException e) {
e.printStackTrace();
return false;
}
}
예외를 발생시킨다.
사용전 후 비교값 이다
//setLenient(false) 사용후
2020-02-29 : 정상
2021-02-29 : 오류
2021-02-211 : 오류
2021-23-21 : 오류
// setLenient(false) 사용전
2020- : 오류
2020-12-12 : 정상
2020-12-124 : 정상
2020-12-1241 : 정상
2020-1332-1241 : 정상
203320-1332-1241 : 정상
'android' 카테고리의 다른 글
아파트 공시가격 재산세 조회하기 (0) | 2021.03.30 |
---|---|
유튜브 파워 유저 유용한 단축키 설명 (0) | 2021.03.16 |
한글 폰트 부산폰트 부산체 (0) | 2018.07.10 |
[CSV 파싱 2] 쌍따옴표 사이의 쉼표 (0) | 2018.07.09 |
[CSV 파싱 1] 텍스트파일 한글 깨짐 (1) | 2018.07.03 |