2012-04-08 9 views
1

私は過去3日間に作成されたデータであれば、日付をマークしようとしています。私は最初から(00:00)、最後の3日間を取る。現在時刻が16時になりましたクロックから、私は過去3日間の取得16時クロックであればグレゴリオ暦とJavaの日付を使用して1日の始まりを得る方法

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

は、私はこのコードを持っています。 00:00 3日前から取得したいです。

ありがとうございました。

+0

セットの時間、分、秒、ミリ秒単位でみてください。一例がここにあります:http://stackoverflow.com/questions/6850874/how-to-create-a-java-date-object-of-midnight-today-and-midnight-tomorrow – samlewis

答えて

5

カレンダーオブジェクトの時間、分、秒をゼロに設定します。

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

これは、gc.addを呼び出した後に行うことを忘れないでください。

+0

どうやって?あなたは私にコードの例をお願いしますか? – Ofer

+0

あなたがコメントしたとおりに更新していました。 – Codemwnci

1

は、カレンダー上のゼロに

gc.set(GregorianCalendar.HOUR_OF_DAY,0); 
gc.set(GregorianCalendar.MINUTE,0); 
gc.set(GregorianCalendar.SECOND,0); 
gc.set(GregorianCalendar.MILLISECOND,0); 
関連する問題