2012-04-08 7 views
1

Ich versuche, Datum zu markieren, wenn die Daten in den letzten 3 Tagen erstellt. Ich möchte die letzten 3 Tage von Anfang an (00:00) nehmen.Wie bekomme ich den Anfang eines Tages mit Gregorianischen Kalender und Datum in Java

ich habe diesen Code:

int days = 3 
    GregorianCalendar gc=new GregorianCalendar(); 
    gc.add(GregorianCalendar.DAY_OF_MONTH, -days); 
    if (timeCreated.before(gc.getTime())) { 
     return true; 
    } 
    return false; 

, wenn die aktuelle Uhrzeit 16:00 Uhr ist ich die letzten 3 Tage erhalten, von 16:00 Uhr bis heute. Ich möchte von 00:00 vor 3 Tagen bis jetzt bekommen.

Danke in fortgeschrittenem.

+0

Sets Stunden, Minuten, Sekunden und Millisekunden auf Null in Ihrem Kalender. Ein Beispiel ist hier: http://stackoverflow.com/questions/6850874/how-to-create-a-java-date-object-of-midnight-today-and-midnight-tomorrow – samlewis

Antwort

5

Setzen Sie die Stunden, Minuten und Sekunden in Ihrem Kalenderobjekt auf Null.

gc.set(GregorianCalendar.HOUR_OF_DAY, 0); 
gc.set(GregorianCalendar.MINUTE, 0); 
gc.set(GregorianCalendar.SECOND, 0); 
gc.set(GregorianCalendar.MILLISECOND,0); 

Denken Sie daran, dies zu tun, nachdem Sie gc.add aufgerufen haben.

+0

wie? kannst du mir bitte ein Codebeispiel geben? – Ofer

+0

Ich habe aktualisiert, wie Sie kommentiert. – Codemwnci

1

versuchen mit

gc.set(GregorianCalendar.HOUR_OF_DAY,0); 
gc.set(GregorianCalendar.MINUTE,0); 
gc.set(GregorianCalendar.SECOND,0); 
gc.set(GregorianCalendar.MILLISECOND,0); 
Verwandte Themen