時,不明白什麼是錯的:喬達LocalDateTime IllegalFieldValueException轉換爲java.util.Date
LocalDateTime localDateTime = new LocalDateTime(1965, 4, 8, 15, 16, 17, 18);
Date date = localDateTime.toDate();
當我運行此我得到:
org.joda.time.IllegalFieldValueException: Value -982 for millisOfSecond must be in the range [0,999]
,但如果我這樣做(沒有millis)來,我沒有得到異常:
LocalDateTime localDateTime = new LocalDateTime(1965, 4, 8, 15, 16, 17);
Date date = localDateTime.toDate();
而且我不明白的例外(即年份= 1975):
LocalDateTime localDateTime = new LocalDateTime(1975, 4, 8, 15, 16, 17, 18);
Date date = localDateTime.toDate();
發生了什麼事?有關於轉換爲java.util.Date的限制嗎?
+1謝謝,這個工程。如果你能解釋爲什麼這是必要的,我會接受它作爲答案。 – DaveRlz
我認爲這是'JodaTime 2 +'的缺陷。我正在使用'JodaTime 1.6',並且我無法在'LocalDateTime'類中使用'toDate()'方法。 – Ilya
是的,我發現錯誤。它在方法'LocalDateTime#fromDateFields' in line'(int)(date.getTime()%1000)' – Ilya