2013-01-14 6 views
-1

문자열이 유효한지 ISO 형식 날짜인지 여부를 확인하고 필요하지 않으면 사용자 정의 예외를 throw해야합니다. 나는이 코드 줄을자바에서 날짜 유효성 확인

,

DateTimeFormatter formatter = ISODateTimeFormat.date(); 

어떻게 문자열을 검증하기 위해이 포맷을 사용합니까?

+0

왜 사용자 정의 예외를 던져? 기존의 날짜 형식 라이브러리에는 DateFormatException이 내장되어 있습니다. IllegalArgumentException와 같은 다른 런타임 예외를 발생시킬 수도 있습니다. 예외에서 복구 할 것으로 예상합니까? – Foo

+0

SimpleDateFormat을 사용하는 것이 가장 좋습니다 : http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html? – amphibient

+0

@Foo 응용 프로그램 특정 예외는 종종 하위 수준 예외보다 유용하기 때문에. –

답변

1

formatter.parseDateTime() 방법으로 구문 분석을 시도했습니다.

문자열이 유효한 날짜가 아니면 IllegalArgumentException이 throw됩니다. 자신의 예외를 던지려면 그냥 잡아서 다른 것을 던지십시오.

0

당신은 IllegalArgumentException을 잡아, 당신이있어 한 formatter 구문 분석하려고 대신 사용자 정의 예외를 던질 수 있습니다

try { 
    formatter.parseMillis(stringBeingValidated); // You can use another parseXYZ method here 
} catch (IllegalArgumentException iae) { 
    throw new CustomException(iae.getMessage()); // The getMessage() call is only an example. 
}