日期与日期和时间的差异

时间:2013-04-11 07:23:51

标签: java android datetime

我有两个日期:

Date dt1 = new Date("04/11/2013 11:00:00");//date
Date dt2 = new Date("04/12/2013 11:00:00");

然后我使用此代码处理,以了解dt1dt2之间的周数

double tanggal = (dt2.getTime() - dt1.getTime()) / (24 * 60 * 60 * 1000);
double week= (double) Math.ceil(tanggal/7);

我尝试运行此代码和the result week is 1.0,但当dt204/11/2013 11:00:01时,the result week is 0.0

如果the result week is 1.0dt2,如何更改结果04/11/2013 11:00:01?我希望,当dt2到第七天或04/18/2013 11:00:01结果变为2.0时。怎么做?

1 个答案:

答案 0 :(得分:2)

如果我理解正确,您希望将日期差异四舍五入到最接近的一周。如果日期 - 时间差小于一天,你得到0的原因是你太早了。您需要做的就是将时间戳转换为double,然后再除以当天的毫秒数。这样你就不会失去一天的时差。将您的代码更改为

double tanggal = ((double)(dt2.getTime() - dt1.getTime())) / (24 * 60 * 60 * 1000);
double week= (double) Math.ceil(tanggal/7);

这样,您的结果将为1.0