В следующем фрагменте кода я ожидал, что исключение будет выбрано, потому что день недели не совпадает с днем месяца. Я не мог найти ничего в DateTimeFormat Javadocs, чтобы сказать что-либо в любом случае о том, чтобы быть «строгим» над такими неправильными совпадениями, но я был смущен тем, что такие плохие данные были разрешены. Разве я что-то не понял или это сознательное дизайнерское решение, с которым я должен заниматься каким-то другим способом?JodaTime не срабатывает при несоответствии дня и месяца
public static void main(String[] args) {
DateTimeFormatter DATE_FORMAT_LONG_DATE = //
DateTimeFormat.forPattern("EEEE, d MMMM yyyy")//
.withZone(DateTimeZone.forID("Australia/Melbourne"));
final String text = "Friday, 1 February 2016"; // Wrong.
final DateTime parsed = DATE_FORMAT_LONG_DATE.parseDateTime(text);
System.out.println(text);
System.out.println(DATE_FORMAT_LONG_DATE.print(parsed));
}
и выход:
Friday, 1 February 2016
Friday, 5 February 2016
Спасибо Jon - ответ был в javadocs DateTimeFormatter, а не в DateTimeFormat. Придется вспомнить этот урок! –