Millisekunden-Umrechnung die 100.

T

Tuppel

Gast
Hallo,

ich weiß derartige Fragen wurden schon oft gestellt, allerdings
kann ich keinen Beitrag finden der mir weiterhilft:

ich habe ein variables Start-Datum, welches immer das heutige ist und
ein fixes End-Datum (Das Ziel sozusagen) und wollte jetzt mal nen Count-
Down runterlaufen lassen:

Java:
public void run() {
		
	while(!interrupted()) {
		start = new GregorianCalendar();
			
		long dt = goal.getTimeInMillis();
		long dts = start.getTimeInMillis();
		long res = (dts - dt) * (-1);
			
		
		// int milli = (int)(res % 1000);
		res /= 1000;
		byte sec = (byte)(res % 60);
		res /= 60;
		byte min = (byte)(res % 60);
		res /= 60;
		byte h = (byte)(res % 24);
		res /= 24;
		int d = (int)res;
			
		label.setText(d + ":" + h + ":" + min + ":" + sec);
			
		try {
			Thread.sleep(1000);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}	
}

dt = goal ===> Das ist das ZielDatum
dts = start ===> Das ist das StartDatum

Das ZielDatum ist eindeutig später als das startdatum, dennoch kommt beim
subtrahieren von goal vom start eine negative Zahl rau? (kA warum) deshalb
die * (-1).

Jedenfalls zu meiner Frage:

StartDatum immer heute. Das Enddatum ist der 24.04.2012 um 13:30
er zeigt dann allerdings an, dass es noch 69 Tage sind, was nicht korrekt ist....
Hab ich was übersehen?

Java:
goal.set(Calendar.DATE, 24);
goal.set(Calendar.MONTH, 4);
goal.set(Calendar.YEAR, 2012);
goal.set(Calendar.HOUR, 13);
goal.set(Calendar.MINUTE, 30);
goal.set(Calendar.SECOND, 0);
goal.set(Calendar.MILLISECOND, 0);
 

eRaaaa

Top Contributor
Deine zweite Zeile beim goal.set ist falsch:
Code:
goal.set(Calendar.MONTH, 3);
= April
Calendar (Java Platform SE 6)


Btw:
dt = goal ===> Das ist das ZielDatum
dts = start ===> Das ist das StartDatum

Das ZielDatum ist eindeutig später als das startdatum, dennoch kommt beim
subtrahieren von goal vom start eine negative Zahl rau? (kA warum) deshalb
die * (-1).

Grober Denkfehler. Da goal in der Zukunft liegt, hat das natürlich auch einen höheren Wert bei getTimeInMillis....Solltest also einfach die beiden umdrehen :p
 

jgh

Top Contributor
ein fehler ist schonmal, dass der Monat des Jahres bei 0 beginnt => April ist 3 =>
Java:
goal.set(Calendar.MONTH, 3);
 

Marc T.

Bekanntes Mitglied
Das ist auch der einzige Fehler,
danach müsste es funktionieren.

Merk dir das, kommt man oft durcheinander, Java rechnet die
Monate immer von 0 bis 11.
 

HimBromBeere

Top Contributor
Dir ist schon klar, dass
Code:
heutiges Datum - Datum
in der Zukunft IMMER ein negatives Ergebnis liefern wird??? Warum drehst du die Differenz nicht einfach um?
 

HimBromBeere

Top Contributor
JA ok, der Kommentar hatte gewisse Schwachstellen, aber er war weniger sprachenspezifisch als viel mehr problemspezifisch gedacht...
Code:
3 - 5
ist auch IMMER eine negative Zahl, wie auch immer du beide Zahlen umrechnest.
Aber danke für den Hinweis, werde mich in Zukunft klarer fassen... (hoff ich mal:D)

EDIT: Nur so nebenbei: ich nehme mal an, dass die beiden Daten einigermaßen in für Java-Compiler berechenenbarer Zeit liegen und keinen Überlauf ergeben. Er wird ja nicht gleich den heutigen Tag und einen Tag im Jahr 3698 verwenden wollen...
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
amgadalghabra Die vier Sortieralgorithmen die durchschnittliche Laufzeit in Millisekunden Java Basics - Anfänger-Themen 37
M Datum in Millisekunden allerdings ohne Uhrzeit Java Basics - Anfänger-Themen 4
L Aus Datum Millisekunden ermitteln ohne Zeitzonen-Berücksichtigung Java Basics - Anfänger-Themen 6
B Date Object mit Millisekunden Ausgabe Java Basics - Anfänger-Themen 8
E Zeit zum bestimmten Datum in millisekunden berechnen Java Basics - Anfänger-Themen 5
K konvertiere Millisekunden in ein Utc Date Objekt Java Basics - Anfänger-Themen 5
S Millisekunden in Datum/Uhrzeit wandeln Java Basics - Anfänger-Themen 11
T Von Millisekunden auf Stunden kommen Java Basics - Anfänger-Themen 2
G Millisekunden in Minuten und Sekunden umwandeln Java Basics - Anfänger-Themen 12
G Datum in Millisekunden umwandeln Java Basics - Anfänger-Themen 6
S Dauer --> Millisekunden in Year:Day:Hour:Minute:Second Java Basics - Anfänger-Themen 7
DStrohma Millisekunden umwandeln in Jahre, Monate, Tage, Stunden Java Basics - Anfänger-Themen 5
G Timstamp mit Millisekunden Java Basics - Anfänger-Themen 2
S Millisekunden umrechnen Java Basics - Anfänger-Themen 12
M millisekunden in echtes Datum umwandeln Java Basics - Anfänger-Themen 2
S long millisekunden nach Uhrzeit format Java Basics - Anfänger-Themen 5
C millisekunden bei gregoriancalendar stimmen nicht Java Basics - Anfänger-Themen 2
O errechnen von Millisekunden Java Basics - Anfänger-Themen 3
E Umrechnung vom Zehnersystem Java Basics - Anfänger-Themen 2
K Umrechnung Koordinaten zu Winkel Java Basics - Anfänger-Themen 3
J Problem bei Umrechnung von Hex in Bin Java Basics - Anfänger-Themen 4
D Umrechnung dezimal -> oktal | signed/unsigned? Java Basics - Anfänger-Themen 1
K Umrechnung von Zeiten Java Basics - Anfänger-Themen 3
Z Dezimal > Binär-Umrechnung Logikfehler? Java Basics - Anfänger-Themen 8
W Fehler bei Umrechnung in Dualsystem Java Basics - Anfänger-Themen 4
E Methoden umrechnung binär/oktal/hexadezimal in dezimalsystem (Methode) Java Basics - Anfänger-Themen 1
E Cosinus berechnen -> Umrechnung in Bogenmaß Java Basics - Anfänger-Themen 11
G Umrechnung Zeit/Temperatur Java Basics - Anfänger-Themen 6
D Umrechnung von Einheiten Java Basics - Anfänger-Themen 7
A Verständnisfrage Sekunden/Tage Umrechnung Java Basics - Anfänger-Themen 3
L Einfache Umrechnung Java Basics - Anfänger-Themen 2
A Umrechnung von € in $ mit Variablen Java Basics - Anfänger-Themen 3
S java.lang.NullPointerException Fehler bei Umrechnung Java Basics - Anfänger-Themen 3
P Umrechnung von Basis b zu Dezimalzahl Java Basics - Anfänger-Themen 7
M Umrechnung von Grad Celsius nach Grad Fahrenheit Java Basics - Anfänger-Themen 9
C Hilfe bei Umrechnung von dezimal nach binär Java Basics - Anfänger-Themen 9
N Programm zur Umrechnung von DM auf EURO mit for-Schleife Java Basics - Anfänger-Themen 3
C Umrechnung von Zahlensystemen Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben