如何编写代码,每隔X天计算一次。就像每个星期一(或星期四,或其他)从一个NSDate到另一个(今天)计数。 我知道,如何通过检查获得NSDate的日期
$int weekday = [[NSCalendar currentCalendar]components:NSWeekdayCalendarUnit fromDate:myDate]weekday];
但这有点帮助......
(当然,我可以计算所有日期和/ 7,但这对我正在研究的项目不起作用......)
答案 0 :(得分:2)
从第一个NSDate
开始,到最后一个NSDate
结束,运行一个while循环。每次增加一天,检查一天是否等于你想要的那一天。
int counter = 0;
while ([NSDate laterDate:earlyDate:lateDate] == lateDate)
{
int weekday = [[NSCalendar currentCalendar]components:NSWeekdayCalendarUnit fromDate:earlyDate]weekday];
if (weekday == desiredWeekday) counter++;
earlyDate = [earlyDate dateByAddingTimeInterval:3600*24];
}