Java - mit Zeit rechnen
lima-city → Forum → Programmiersprachen → Java
abfragen
akt
arbeiten
ausgeben
beginn
dank
date
datum
ergebnis
http
kombinieren
millisekunde
minute
nehmen
objekt
problem
rechnen
sekunde
spezielle methoden
variable speichern
-
Hallo Ihr!
Ich stehe gerade vor folgendem Problem: Ich habe einen Task, der z.B. alle 5 Minuten ausgeführt wird.
Zu Beginn des Tasks nehme ich die Zeit und möchte nun ausgeben, wann der Task das nächste mal
ausgeführt werden wird. Also wenn ich um 12.57 starte, möchte ich dann 5 Minuten drauf rechnen und
ausgeben, dass der Task das nächste Mal um 13.02 wieder startet.
Wie aber kann ich rechnen mit einem Datum (bzw. einem SimpleDateFormat). Gibt es da spezielle Methoden dafür?
Oder müsste ich mir das alles selbst schreiben?
Oder müsste ich die aktuellen Millis nehmen, dann 5 Minuten draufrechnen und wieder in ein Datum umrechnen?
Gibt es da keinen einfachen Weg?
Gruß podocs07 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
in dem fall das du nur alle fünf minuten etwas machen willst würd ich einfach die millis abfragen und dann + 300 und das ergebnis in einer variable speichern dann wieder abfragen wenn es der variable entspricht dann wieder plus 300 wenn nich ne sekunde warten und dann wieder abfragen
-
Ja du musst es in Millisekunden umrechnen und deine 5 Minuten addieren. Anschließend kannst du es wieder in ein Datum umwandeln.
http://www.java2s.com/Code/Java/Development-Class/DateAddcomputethedifferencebetweentwodates.htm -
uarghs, schrecklich Ich hatte echt gehofft da gibts was dafür...
Danke euch recht herzlich!
kein Problem :D -
du kannst es schon mit Calendar formatieren, ich würde empfehlen, die aktuelle Zeit einmal abzufragen(wenn du einen neuen Calendar erstellst hast du die akt Zeit[Calendar cxc = Calendar.getInstance();]), und dann mit den methoden von calendar einfach weiterzuspringen(genaueres in allen java-tutorials bzw. api). Ausgeben kannst du das ganze mit DateFormat
hoffe das hilft jemandem...
-
Ich glaube, er will die nächste Zeit ausgeben,
da muss er mit Calendar arbeiten,
den Timer braucht er aber sowieso alle 5 min,
würd ich also kombinieren. -
Ich würde auch einen Thread mit slepp nehmen
-
Date aktuelleZeit=new Date();
Date datein5Min=new Date(aktuelleZeit.getTime()+300);
und dann das zu formatiert ausgeben(GregorienCalendar oder SimpleDateFormatter) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage