获取两个日期之间的周数. [英] Get the number of weeks between two Dates.

查看:51
本文介绍了获取两个日期之间的周数.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在一个项目中工作,我在日期中有两种类型.我想计算这两个日期之间的周数.日期可以在不同的年份.对此有什么好的解决方案吗?

我已尝试使用其他主题中建议的 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();返回 p.getWeeks();}

但这是完全错误的...有什么建议吗?

解决方案

joda time 很容易

一个>:

DateTime dateTime1 = new DateTime(date1);DateTime dateTime2 = new DateTime(date2);int 周 = 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();

这篇关于获取两个日期之间的周数.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆