Ich erhalte diese Ausnahme, wenn ich versuche, epochTime zu konvertieren LOCALDATE wo:java.time.DateTimeException: ungültiger Wert für Jahr (gültige Werte -999.999.999-999.999.999)
1) Datum: 2017.05.05 10: 08: 52,0
2) entsprechende Epoche: 1493959132000
LocalDate lastUpdatedDate = LocalDate.ofEpochDay(1493959132000);
Ausnahme:
java.time.DateTimeException: Invalid value for Year (valid values -999999999 - 999999999): 4090323145
at java.time.temporal.ValueRange.checkValidIntValue(ValueRange.java:330)
at java.time.temporal.ChronoField.checkValidIntValue(ChronoField.java:722)
at java.time.LocalDate.ofEpochDay(LocalDate.java:341)
Ich verstehe, dass der Quellcode von java.time.LocalDate bei https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html#ofEpochDay-long-
eine vorherige Warnung gibt. Was bedeutet das eigentlich und wann kommt es?
Nun, 1493959132000 Tage, ist ungefähr 1493959132000/365 = 4.093.000.000 Jahre wie in der Ausnahmebedingungsnachricht angegeben. Deine Annahmen sind falsch. 4.000.000.000 + epochYear> 2017. Epochenjahr ist 1970, also (2017-1970) * 365 fast entspricht 17500 Tagen ... –
Noch einmal, das Lesen des Javadoc der Methode, die Sie anrufen, würde viel helfen. https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html#ofEpochDay-long- –