java.util.Date(): Datumsdifferenzen berechnen

Java stellt zur Datumsberechnung einige Klassen in Java.util.* bereit. Zur berechnung von Differnzen eignen sich die Klassen Date() und Calendar(). Beispiel:

private void deleteOldLogmessages(int beforeMonths) {
// heute:
Date now = new Date();

// Formatierung fuer Ausgabe
String DATE_FORMAT = „dd-MM-yyyy“;
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(DATE_FORMAT);

Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
System.out.println(„cal now: „+sdf.format(calendar.getTime()));

// Calendar.add(): Datumsdiferent, diese Funktion ist Sicher über Jahresgrenzen hinweg!
calendar.add(Calendar.MONTH, beforeMonths);
System.out.println(„cal -3: „+sdf.format(calendar.getTime()));

// debug…
Date deleteBeforedate = new Date();
deleteBeforedate = calendar.getTime();
System.out.println(„now: „+now.getTime());
System.out.println(„sub: „+deleteBeforedate.getTime());
System.out.println(„diff: „+(now.getTime() – deleteBeforedate.getTime()));
}