日付が文字列に格納されており、ISODateFormat で日付または曜日を表しているかどうかを検証する必要があります。
いずれかの形式であれば、文字列を使用できます。
2 つのフォーマッターを作成して文字列を渡し、両方が例外をスローする場所を確認して検証できます。
String date;
final DateTimeFormatter dateFormatter = ISODateTimeFormat.date();
final DateTimeFormatter weekdateFormatter = ISODateTimeFormat.weekDate();
boolean isDate=true,isWeekDate=true;
try {
dateFormatter.parseDateTime(date);
}
catch (IllegalArgumentException e) {
isDate =false;
}
try {
weekdateFormatter.parseDateTime(date);
}
catch (IllegalArgumentException e) {
isWeekDate =false;
}
if(!isDate && !isWeekDate)
throw UserDefinedException();
それを行うより良い方法はありますか?