Differenz zwischen zwei Uhrzeiten

Status
Nicht offen für weitere Antworten.

Andorian

Mitglied
Guten Morgen zusammen.

Ich hab da mal ne Frage zur Uhrzeit, hab es schon gegoggelt aber nicht verstanden^^

Ich möchte gerne die Differnez zwischen zwei Uhrzeiten ausgeben können. Die Uhrzeiten sollen per Textfeld eingelesen werden. Ohne Sekunden oder Tag. Das Datum des Tages steht in einem extra Textfeld.

Also zur verdeutlichung, es geht um eine digitale Stempeluhr.
Heist also ich geb das momentane Datum ein und dann meine Arbeitszeit von, bis abzüglich der Pausen von, bis erhalte ich dann meine IST Arbeitsstunden.

Ich hoffe ihr könnt mir helfen.
 
Zuletzt bearbeitet:
vielleicht hilft das...
Code:
     DateFormat df = new SimpleDateFormat("HH:mm");
     
     String time1 = "8:00";
     String time2 = "9:16";
     
     Date date1 = df.parse(time1);
     Date date2 = df.parse(time2);
     
     long dif = date2.getTime()- date1.getTime(); //ms
     
     System.out.println(dif/1000 +" sekunden");
 
Habs versucht funktionier dennoch nicht.

Brauch auch noch das Import für DateFormat.

Ich muss halt auch die Uhrzeit aus dem textfeld lesen und da macht er bei mir auch immer schwierigkeiten.

[Edit]
Error: Class DateFormat not found.
DateFormat df = new SimpleDateFormat("HH:mm");
^
Error:Class SimpleDateFormat not found.
DateFormat df = new SimpleDateFormat("HH:mm");
^
Error:Incompatible type for =. Explicit cast needed to convert long to int.
c=(dif/1000);

Die fehlermeldungen
 
Zuletzt bearbeitet:
import java.text.*;

Das sollte Dir auch die IDE einfügen können.

JTextField uhrzeitTextField = new JTex.......
Date date1= df.parse(uhrzeitTextField.getText());
 
ich würde eine ide wie eclipse verwenden.. mir ist bewusst, dass bei meinem beispiel nich imports fehlen...

c=(dif/1000);
dein c ist wahrscheinlicht int, das dif ist long....

int c = (int) (dif/1000);


das sind fehler, da weißt dich eclipse darauf hin und bietet dir sofort passende lösungsmöglichkeiten...
 
Ja das Problem ich bin an Vcafe gebunden quasi und kann/darf nichts anderes verwenden.

Kurz nochmal ne erklärung:
Arbeitszeit:

Anfang Ende
textfeld1 textfeld2

Pausen:

Anfang Ende
textfeld3 textfeld4

Wie gesagt Arbeitszeit minus Pausen gleich Ist Stundensatz ( am besten in Std und Minuten). Diese müssen in einer datenbank ausgegeben werden:
pstmt.setInt(3, c);
Also muss c der Ist Stundensatz sein.
Nun muss c noch mal den Stundenlohn genommen werden.
Also G= c*l(Stundenlohn)

Könnt ihr mir viell nen löchungsvorschlag posten, wenn ihr einen wisst.
Danke
 
jetzt ehrlich? willst du einen löschungsvorschlag, für ein mathematisches problem, das man in der volksschule lernt?

ok.. ausnamsweise...

hol dir die diferenz der dates von textf1 minus textf2, das ist die dauer die er da war in ms
hol dir die diferenz der dates von textf4 minus textf3, das ist die dauer der pause in ms

diese beiden minus, ergibt die dauer die er effektif gearbeitet hat in ms.. /1000 dann hast du sekunden
/ 60 dann hast du minuten /60 dann hast du stunden .. mal dem Stundensatz ... das kannst du dann speichern...
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben