dayOfMonth 的值 31 必须在 [1,30] 范围内

Value 31 for dayOfMonth must be in the range [1,30] March

我得到:

Exception in thread "main" org.joda.time.IllegalFieldValueException: Cannot parse "1444-05-31 10-10": Value 31 for dayOfMonth must be in the range [1,30]

密码是:

    Chronology hijri = IslamicChronology.getInstanceUTC();
    DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd HH-mm")
            .withChronology(hijri);
    DateTime hijriDt = formatter.parseDateTime("1444-05-31 10-10");

我在某处读到 joda 从 0 而不是 01 开始计算月份。然而,这是用户输入,需要通过格式化程序对其进行解析。我不能使用 joda 的常规 setter 和 getter 来设置日期。

在回历中,第 5 个月需要 30 天。所以没有像 1444-05-31

这样的一天