Hallo,
wie kann ich in Java Anz. Millisekunden
in Tag, Std, Minute in dieser Form berechnen dddhhmm.
Das möchte ich machen, da ich die Differenz zw. 2 Daten
in Millisekunden errechne und das Erg. in dieser Form
darstellen möchte.
Vielen Dank für Eure Hilfe.
Gruss
Fabian
Hallo Fabian,
so sollte es gehen (millis = Anz. der Millisekunden):
**// Ausgabeformat mit mindestens 2 Stellen
DecimalFormat format = new DecimalFormat(„00“);
// Tage,Stunden und Minuten berechnen
long day = millis/86400000;
long hour = (millis % 86400000)/3600000;
long min = (millis % 3600000)/60000;
System.out.println("Differenz: "+format.format(day)+format.format(hour)+format.format(min));**
gruss
Stefan
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo Namensvetter!
Der Vollständigkeit möchte ich noch anmerken, dass Datumsausgaben i.A. über die Klasse java.text.DateFormat bzw. notfalls auch java.text.SimpleDateFormat gemacht werden. Das hier ist aber zugegebenermaßen ein Sonderfall (eine Datumsdifferenz), in dem die angegebene Vorgehensweise funktioniert.
Nur die großen Zahlen solltest du lesbarer machen:
86400000 ersetzen durch
24 \* 60 \* 60 \* 1000
und
3600000 durch
60 \* 60 \* 1000
Sonst wirst du ein paar Tage später bei der Fehlersuche ganz schön nachrechnen, glaube mir…
In jedem Fall aber mal wieder:
http://www.torsten-horn.de/techdocs/java-date.htm#Be…
Gruß,
Stefan
so sollte es gehen (millis = Anz. der Millisekunden):
// Ausgabeformat mit mindestens 2 Stellen
DecimalFormat format = new DecimalFormat(„00“);// Tage,Stunden und Minuten berechnen
long day = millis/86400000;
long hour = (millis % 86400000)/3600000;
long min = (millis % 3600000)/60000;System.out.println("Differenz:
"+format.format(day)+format.format(hour)+format.format(min));