本文介绍了获取两个日期之间的星期数。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在工程中工作,在Date中有两种类型。我想计算这两个日期之间的星期数。日期可能在不同的年份。有没有什么好的解决方案呢?我已经试图用其他主题中提出的Joda-time来实现这一点。
这个图书馆很熟悉,但是我试图这样做:
public static int getNumberOfWeeks(Date f,Date l){
日历c1 = Calendar.getInstance();
日历c2 = Calendar.getInstance();
c1.setTime(f);
c2.setTime(l);
DateTime start = new DateTime(c1.YEAR,c1.MONTH,c1.DAY_OF_MONTH,0,0,0,0);
DateTime end = new DateTime(c2.YEAR,c2.MONTH,c2.DAY_OF_MONTH,0,0,0,0);
间隔间隔=新间隔(开始,结束);
期间p = interval.toPeriod();
return p.getWeeks();
}
但这是完全错误的...任何建议?
解决方案
:
DateTime dateTime1 = new DateTime(date1);
DateTime dateTime2 = new DateTime(date2);
int weeks = Weeks.weeksBetween(dateTime1,dateTime2).getWeeks();
Im working in a project and I got two types in Date. I want to calculate the number of weeks between these two dates. The dates can be in diffrent years. Is there any good solution for this?
I have tried to implemenent this with Joda-time which was suggested in other topics..
Im not familar with this library, but I tried to do something like this:
public static int getNumberOfWeeks(Date f, Date l){
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(f);
c2.setTime(l);
DateTime start = new DateTime(c1.YEAR, c1.MONTH, c1.DAY_OF_MONTH, 0, 0, 0, 0);
DateTime end = new DateTime(c2.YEAR, c2.MONTH, c2.DAY_OF_MONTH, 0, 0, 0, 0);
Interval interval = new Interval(start, end);
Period p = interval.toPeriod();
return p.getWeeks();
}
But this is completely wrong... any suggestions ?
解决方案
It is pretty easy with joda time:
DateTime dateTime1 = new DateTime(date1);
DateTime dateTime2 = new DateTime(date2);
int weeks = Weeks.weeksBetween(dateTime1, dateTime2).getWeeks();
这篇关于获取两个日期之间的星期数。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!