Programm gefolgt von Ausgabe. Jemand bitte erklären Sie mir, warum 10.000.000 Millisekunden vom 1. Januar 1970 der 31. November 1969 ist. Nun, jemand bitte erklären, was falsch ist mit meiner Annahme, dass der erste Test eine Zeit 10.000.000 Millisekunden vom 1. Januar 1970 produzieren sollte. Zahlen kleiner als 10.000.000 produzieren das gleiche Ergebnis.Java.util.Calendar - Millisekunden seit dem 1. Januar 1970
public static void main(String[] args) {
String x = "10000000";
long l = new Long(x).longValue();
System.out.println("Long value: " + l);
Calendar c = new GregorianCalendar();
c.setTimeInMillis(l);
System.out.println("Calendar time in Millis: " + c.getTimeInMillis());
String origDate = c.get(Calendar.YEAR) + "-" + c.get(Calendar.MONTH) + "-" + c.get(Calendar.DAY_OF_MONTH);
System.out.println("Date in YYYY-MM-DD format: " + origDate);
x = "1000000000000";
l = new Long(x).longValue();
System.out.println("\nLong value: " + l);
c.setTimeInMillis(l);
System.out.println("Calendar time in Millis: " + c.getTimeInMillis());
origDate = c.get(Calendar.YEAR) + "-" + c.get(Calendar.MONTH) + "-" + c.get(Calendar.DAY_OF_MONTH);
System.out.println("Date in YYYY-MM-DD format: " + origDate);
}
Long-Wert: 10000000
Kalender Zeit in Millis: 10000000
Datum in YYYY-MM-DD-Format: 1969-11-31
Long-Wert: 1000000000000
Kalenderzeit in Millis: 1000000000000
Datum in YYYY-MM-DD-Format: 2001-8-8
Danke! Ich dachte, ich würde verrückt werden. –