Я хочу преобразовать дату из персидского календаря в григорианский календарь. Для этого я использую библиотеку ICU4J (версия 65.1). Проблема в том, что эта библиотека выдает неверный вывод для некоторых дат.
Вот мой код:
ULocale locale = new ULocale("fa_IR@calendar=persian");
GregorianCalendar gregoriancal = new GregorianCalendar();
Calendar persiancal = Calendar.getInstance(locale);
// year month day
persiancal.set(1398, 11, 16);
gregoriancal.setTime(persiancal.getTime());
String day = gregoriancal.get(Calendar.DATE) + "";
System.out.println(day);
----------------------------------------
output: 6
эта дата по персидскому календарю ( 16 ноября 1398 г. ) соответствует 05 февраля 2020 г., среда, февраль по григорианскому календарю.
но он дает мне 6 в качестве вывода (в то время как он должен дать 5)
что-то не так с моим кодом, что приводит к неправильному выводу??