# Datum: Differenz in Tagen berechen



## blöde Frage (12. Feb 2007)

Ich habe folgendes Problem: 

ich habe zwei Daten vom Typ Date. Und hier muss ich prüfen, ob Datum2 - Datum1 < 5 Tage ist. 

Wie kann ich die Differenz zwischen zwei Daten berechen?


----------



## André Uhres (12. Feb 2007)

```
static final long ONE_HOUR = 60 * 60 * 1000L;
    public long daysBetween(Date d1, Date d2){
        return ( (d2.getTime() - d1.getTime() + ONE_HOUR) / (ONE_HOUR * 24));
    }
```


----------



## Halunken-Joe (22. Feb 2007)

Date ist doch depricated? Ich habe es gerade anders gelöst:

Beispiel Differenz zwischen 22.Feb.2007 und 12.Feb.2007


```
//zwei neue Objekte erzeugen und das Datum als Parameter übergeben
//es gibt den Konstruktor auch mit anderen Parametern
GregorianCalendar cal_today = new GregorianCalendar (2007, 2, 22);
GregorianCalendar cal_lastweek = new GregorianCalendar (2007, 2, 12);
		
//die Zeit in Millisekunden seit EPOCH berechnen
long x = cal_today.getTimeInMillis();
long y = cal_lastweek.getTimeInMillis();

//Und die Millisekunden in Tage umrechnen
long z = (x- y) / 1000 / 60 / 60 / 24;
		
System.out.println("Differenz in Tagen = " + z);
```


----------



## André Uhres (22. Feb 2007)

Date ist nicht deprecated:

```
System.out.println("Differenz in Tagen = " + daysBetween(cal_lastweek.getTime(), cal_today.getTime()));
```


----------

