1

我一直在玩NSDates,需要比较两个日期是否在同一周。到目前为止,我已经设法使用[NSDateComponents week]来检查它们是否在一周内。但是,我需要能够检查它们是否在一个月的同一周,例如week 1 {monday-sunday}week 2 {monday-sunday}.

这在iOS中可能吗?

4

1 回答 1

1

是的。

虽然这听起来很可疑,但它可能是一项家庭作业。我认为这就是您想要的,但是如果您只希望它成为第 3 周(或其他什么)的一部分,那么它在哪个月并不重要;您可以取出月份部分。

// Assume date1 and date2 are NSDates

NSCalendar *cal = [NSCalendar currentCalendar];

NSDateComponents *date1Components = [cal components:(NSMonthCalendarUnit | NSWeekCalendarUnit) fromDate:date1];
NSDateComponents *date2Components = [cal components:(NSMonthCalendarUnit | NSWeekCalendarUnit) fromDate:date2];

if (date1Components.week == date2Components.week &&
    date1Components.month == date2Components.month) {
    // same week of same month
} else {
    // either different week or different month (or both)
}

有关这方面的更多信息,请查看 Apple 的日期和时间编程指南

于 2013-02-27T15:44:43.650 回答