N
nillehammer
Gast
Hallo Forum,
ich möchte in meinem Programm eine Funktion, die mir ein Date-Objekt gibt, dass das aktuelle Datum repräsentiert, bei dem aber die Uhrzeit 00:00:00 ist. Dazu habe ich mit Calendar folgendes gemacht:
Ergebnis is: Fri Jul 29 12:00:00 CEST 2011
Die Minuten, Sekunden und Millisekunden hat er also auf 0 gesetzt, aber warum steht bei Stunden eine 12? Ich habe es dann gelöst, indem ich -12 bei Stunde gesetzt habe.
Ergebnis ist jetzt, wie gewünscht: Fri Jul 29 00:00:00 CEST 2011
Das klappt aber nur nachmittags (nach 12:00). Vormittags muss man tasächlich 0 setzen. Was passiert da im Calendar?
Dank und Gruß nillehammer
ich möchte in meinem Programm eine Funktion, die mir ein Date-Objekt gibt, dass das aktuelle Datum repräsentiert, bei dem aber die Uhrzeit 00:00:00 ist. Dazu habe ich mit Calendar folgendes gemacht:
Java:
final Calendar cal = Calendar.getInstance(); // default timezone und locale, also MESZ und GERMAN
// Testhalber mal ausgeben, was in cal drinnnen ist
System.out.println(cal.getTime());
// Jetzt die Felder hour, minute, second, millisecond auf 0 setzen
cal.set(Calendar.HOUR, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILISECOND, 0);
// Und wieder schauen, was drinnen ist
System.out.println(cal.getTime());
Die Minuten, Sekunden und Millisekunden hat er also auf 0 gesetzt, aber warum steht bei Stunden eine 12? Ich habe es dann gelöst, indem ich -12 bei Stunde gesetzt habe.
Java:
cal.set(Calendar.HOUR, -12);
// Und wieder schauen, was drinnen ist
System.out.println(cal.getTime());
Das klappt aber nur nachmittags (nach 12:00). Vormittags muss man tasächlich 0 setzen. Was passiert da im Calendar?
Dank und Gruß nillehammer
Zuletzt bearbeitet von einem Moderator: