Abstand zwischen zwei Zeitstempeln errechnen.

tbrinkmann

Neues Mitglied
Tag,
anfänger Fragen:

Date 1. 15-04-2011 08:44:50
Date 2. 15-04-2011 15:15:00

Ich würde gerne den Zeitabstand berechnen. Aus PHP kenn ich das so, umrechnen unix timestamp abziehen wieder zurück formatieren.

Nen bekannter meinte ich solle date.compareTo nehmen. Ich glaube aber Verstanden zu haben das, dass nur Tageweise geht.

Mittlerweile habe ich den String zerschnitten und in eine ArrayListe gepackt. Leider möchste die java.util.utc jetzt den Datentype nicht. Wie kann ich den Datentyüe konvertieren damit das funktioniert. mit UTC(new Integer(ArrayList[0])) ging es nicht..

Vielleicht kennt jemand noch ein viel schlaueren Weg.

Java:
<% StringTokenizer st = new StringTokenizer(rst.getString("START_TIME")," ");
   while(st.hasMoreTokens())
   {
            List dateAr = new ArrayList();
            StringTokenizer parts = new StringTokenizer(st.nextToken(),"-");
             while(parts.hasMoreTokens())
             {
                      dateAr.add(parts.nextToken());
              }       

             start_date = dt.UTC( parts );
             out.print(start_date);
  }
%>

ERROR: The method UTC(int, int, int, int, int, int) in the type Date is not applicable for the arguments (List)

Danke tbrinkmann
 
Wenn ich mich nicht täusche gab es das schon mehrmals hier in Forum, hast du da nichts vernünftiges gefunden?
---

Du solltest auch deine Liste(list) in 6x int`s auflösen, dann geht es.

UTC benötigt (x,x,x,x,x,x); als Argument
 
Mit SimpleDateFormat kannst du sehr einfach einen String zu einen Timestamp (repräsentiert durch eine Date-Instanz) umwandeln. Dann einfach die Differenz errechnen und mit

Java:
long dif = date1stamp - date2stamp;
dif = Math.abs(dif); //Keine Negativen Zahlen.
//              Days  Hours  Min   Sek
int days = dif / 24 /  60 /  60 / 1000;
z. B. in Tage, aber natürlich auch alles andere ausrechnen. Eventuell noch mal durch (1000 * 1000), ich bin mir gerade nicht sicher ob Date in ms oder ns ist.
 

Neue Themen


Zurück
Oben