我有一些开始约会。例如1.02.1995 我有一些完成日期。例如10.02.1995
我想将此范围除以10(例如)并获取此范围的日期。
这里将是1.02.1995,2.02.1995,3.02.1995,4.02.2995,5.02.1995,6.02.1995,7.02.2995,8.02.1995,9.02.2995,10.02.1995。
我知道如何计算两个日期之间的天数,但我不知道如何转换 到目前为止(从2011年1月1日开始算起,将于5月为5.01.1990),使用库。
我对自己编写算法不感兴趣。
最好的方法吗?
Thanx
答案 0 :(得分:1)
示例代码,用实际值和方法替换....
假设日期格式为MM / DD / YYYY
当心cal.get(Calendar.MONTH);范围为{0-11},日期范围为1-31
Calendar start = .... ;
Calendar end = ....;
int startEndMonthDiff = .... ; // the difference in months
Calendar temp = ; // set to start date
for(int i=0;i<startEndMonthDiff;i++)
{
// you may store temp in list at each loop
temp.add(Calendar.MONTH,1);
}
答案 1 :(得分:0)
Jodatime是最简单的方法,使用一个名为daysBetween的小函数来获取天数,然后为每天的数组添加日期 即。
List<LocalDate> dates = new ArrayList<LocalDate>();
int days = Days.daysBetween(startDate, endDate).getDays();
for (int i=0; i < days; i++) {
LocalDate d = startDate.withFieldAdded(DurationFieldType.days(), i);
dates.add(d);
}