проверка корректности даты
Прошу помощи. Входным параметром является строка, где должна быть дата, типа "01.09.2005". Надо убедиться, что это действительно дата. Нижеприведенный код ест и такие даты "31.09.2005" и "01.13.2005" - он их просто переводит в "01.10.2005" и "01.01.2006". Как мне вывалиться в ошибку при таком вводе?
public static String reformatDate(String dateString) {
try {
Calendar calendar = new GregorianCalendar();
calendar.setTime(new SimpleDateFormat("dd.MM.yyyy").parse(dat eString));
return "ok";
}
catch (Exception e) {
return "error";
}
}
---------
читала про ParsePosition, но, к сожалению, ничего не поняла, с Java только знакомлюсь
upd: ответ получен, спасибо
calendar.setLenient(false); - выучу наизусть
public static String reformatDate(String dateString) {
try {
Calendar calendar = new GregorianCalendar();
calendar.setTime(new SimpleDateFormat("dd.MM.yyyy").parse(dat
return "ok";
}
catch (Exception e) {
return "error";
}
}
---------
читала про ParsePosition, но, к сожалению, ничего не поняла, с Java только знакомлюсь
upd: ответ получен, спасибо
calendar.setLenient(false); - выучу наизусть
