2012-04-08 115 views
1

我想在过去3天创建的数据标记日期。我想从最开始的3点(00:00)开始。如何在java中使用公历日历和日期开始日期

我有这样的代码:

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

如果当前时间是16:00钟我得到过去3天,从16:00时钟到现在。 我想从3天前的00:00到现在。

谢谢先进。

+0

设置小时,分钟,秒和毫秒为零。一个例子是在这里:http://stackoverflow.com/questions/6850874/how-to-create-a-java-date-object-of-midnight-today-and-midnight-tomorrow – samlewis 2012-04-08 08:33:44

回答

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 2012-04-08 08:38:16

+0

我正在更新,因为您评论。 – Codemwnci 2012-04-08 08:39:00

1

尝试用你的日历

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