Timestamp
-
Hallo zusammen ich habe folgendes Problem:
Timestamp time = new Timestamp((System.currentTimeMillis() + 1000) - System.currentTimeMillis()); SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); System.err.println(sdf.format(new Date(time.getTime())));
liefert mir folgenden ausdruch auf der console:
01:00:01
wie und was muss ich denn wo einstellen damit ich "00:00:01" bekomme?
Hintergrund:
ich möchte mir gerne ne stoppuhr bauen.Vielen Dank im voraus:
JavaKruemmel
-
Also wenn du es mit den Time- und Date-Funktionen machen willst, warum nicht so:
Date start = new Date(); // start enthält den Zeitpunkt der Objekterstellungen // tue irgendwas, dessen Zeit du messen willst Date end = new Date(); // end enthält den Zeitpunkt der Objekterstellungen int verstricheneZeit = end.getTime() - start.getTime();
Aber ich weiß jetzt nicht genau, ob es da eine genauere Möglichkeit gibt die Zeit zu messen. Welchen Zeitbereich willste denn abfangen? Wenn es sich um Sekunden handelt, dürfte obige Lösung genau genug sein.
-
also das Timestamp Format nehme ich wegen der Datenbank.
im Endeffekt ziehe ich 2 Timestamps voneinander ab.
also so etwa.
Timestamp ts = new Timestamp(foobar.getStopTimestamp().getTime() - fooBar.getStopTimestamp().getTime());
das funktioniert soweit ja auch wunderbar. Nur wenn ich mir diese Timestamp jetzt als String ausgeben lasse, dann fängt er mir bei 01:00:00 an.
Wenn ich jetzt aber z.b. ne stopuhr bauen will, is das net sonderlich hilfreich wenn der dort anfängt. Wie mache ich das nun, dass ich es als 00:00:00 ausgegeben bekomme.
-
Machs halt so
Timestamp time = new Timestamp(1000*60*60*23 + 1000); SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); System.out.println(sdf.format(new Date(time.getTime())));