Мне нужно подтвердить Японская дата, введенная пользователем.Japanese Date Validation - Сравнение
Позвольте сказать, что пользователь выбирает ERA
-> Введите DOB как YY - MM - dd
.
На стороне сервера я получаю input date
и ERA
, выбранные пользователем.
Теперь мне нужно проверить введенную дату с выбранной ERA, если дата падает в период конкретной ERA или нет.
Я знаю, что в Java Calendar API есть поддержка, также есть класс JapaneseImperialCalendar
, но я не могу понять, как его использовать, хотя он использует его внутри.
Это то, что я сделал до сих пор.
public static void main(String[] args) {
Locale locale = new Locale("ja", "JP", "JP");
Calendar now = Calendar.getInstance(locale);
System.out.println(now.get(Calendar.ERA));
Map<String, Integer> names = now.getDisplayNames(Calendar.ERA, Calendar.LONG, locale);
System.out.println(names);
System.out.printf("It is year %tY of the current era%n", now);
System.out.printf("The calendar class is: %s%n", now.getClass().getName());
}
выход
4
{??=3, ??=4, ??=2, ??=1, ??=0}
It is year 0026 of the current era
The calendar class is: java.util.JapaneseImperialCalendar
предположим, что пользователь вводит, выбран ЭРА SHOWA
, ожидаемый период 1926–1989
YY MM DD
34 05 28 // which is valid date
снова
YY MM DD
62 12 28 // which should be invalid date
Так нужно построить определенную логику для проверки пользовательского ввода даты с ERA