Tage zwischen zwei Terminen berechnen

  • 4 Antworten
  • Neuester Beitrag
Diskutiere Tage zwischen zwei Terminen berechnen im Android App Entwicklung im Bereich Betriebssysteme & Apps.
E

Elbern

Neues Mitglied
Guten Tag,

ich würde gerne die Anzahl der Tag zwischen zwei Daten herausbekommen.
Undzwar vom heutigen Datum bist zu einem vom Benutzer gewählten Datum welches als String im Format
yyy-MM-DD(z.B 2017-02-22) vorliegt, ich bekomme den String aber anscheinend in kein richtiges Datum Umgewandelt, denn benutze ich compareTo
kommt immer 1 raus.

mfg
Elbern
 
swa00

swa00

Moderator
Teammitglied
Hallo Elbern,

ich wäre Dir super Dankbar , wenn du auch die Antworten , die man dir gibt
auch beherzigst ...

Benachrichtigung/Erinnerung an den Benutzer

Du fragst immer wieder das Gleiche - scheinst das dann nicht zu verstehen und machst einen neuen Thread auf.

Das wird schon langsam etwas lästig .... und vor allem ist das unfair denen gegenüber,
die sich in ihrer Freizeit hinsetzen um dir zu helfen
 
Kardroid

Kardroid

Stammgast
Dann werfe ich einfach Joda-Time mit ins Boot, obwohl es ja eigentlich schon seit Java 8 deprecated ist.
Joda-Time - Home
 
kukuk

kukuk

App-Anbieter (kostenlos)
In diffDays steckt nun die Anzahl der Tage drin!
Hier ist ein kleines Beispiel.

Da kannst dann if (diffDays == 25){
}
machen oder was auch immer du willst.

Code:
 String vergleichs_datum = "01.01.2015";
    
      int  tag = Integer.parseInt(vergleichs_datum.substring(0, 2));
int        monat = Integer.parseInt(vergleichs_datum.substring(3, 5));
int        jahr = Integer.parseInt(vergleichs_datum.substring(6, 10));
Calendar calender = Calendar.getInstance();
    
        Calendar cal1 = Calendar.getInstance();
        Calendar cal2 = Calendar.getInstance();
    
 
        cal2.set(jahr, monat, tag);
   int monat;
   monat = calender.get(Calendar.MONTH) + 1;
//aktuelles Datum!
        cal1.set(calender.get(Calendar.YEAR),  monat , calender.get(Calendar.DAY_OF_MONTH));
    



        long milis1 = cal1.getTimeInMillis();
        long milis2 = cal2.getTimeInMillis();
    

        long diff = milis2 - milis1;
    

        //long diffSeconds = diff / 1000;
    

        //long diffMinutes = diff / (60 * 1000);
    

       // long diffHours = diff / (60 * 60 * 1000);
    

        long diffDays = diff / (24 * 60 * 60 * 1000);

       }