Datum subtrahieren - bekomme falsche Ergebnis



  • Am anfangt speichere ich Aktuelle SystemZeit

    long startTime = System.currentTimeMillis();
    

    nach ca. 50 sek möchte ich den Zyklus Zeit anzeigen

    getTestZeit( startTime, System.currentTimeMillis() );
    

    und bekomme anstatt 00:00:51 falsche Ergebnis 01:00:51.
    Kann jemand sagen was ist in der Funktion falsch, bzw. wieso?
    [java]
    String getTestZeit(long start, long ende) {
    dateFormat = new SimpleDateFormat("HH🇲🇲ss");
    return dateFormat.format( new Date(ende - start) );
    }[/code]
    christine.

    [ Dieser Beitrag wurde am 03.02.2003 um 15:46 Uhr von CengizS editiert. ]



  • Es ist höchst ungewöhnlich für die Speicherung einer Zeitmessung (Zeitdifferenz) ein Date-Objekt zu vergewaltigen. Wenn es nur um die Differenz geht solltest du einfach nur die Differenz als long-Wert speichern. Alles andere sieht für mich grad nicht sonderlich sinnvoll aus.

    Ach ja noch was ... bitte benutze korrekte Code-Tags - Danke!

    [ Dieser Beitrag wurde am 03.02.2003 um 15:45 Uhr von CengizS editiert. ]



  • Na ja, die Funktion sollte universal eingesetzt werden – das bedeutet manchmal werden Millisekunden zurückgegeben – aber hin und wieder Stunden, Tage usw.

    trotzdem Danke!
    christine.

    PS: ich glaube die 1 bedeutet die Zeitzone (also ein JAVA-Bug)



  • Trotzdem ist es kein Date 🙂 Ich denke du solltest Dir die Rückrechnung auf Sekunden, Stunden etc. pp. selbst programmieren.



  • DANKE!

    habe so gemacht(das ganze ist beschien länger aber es funkt).

    christine.


Anmelden zum Antworten