NSDate比较

时间:2012-07-13 05:29:39

标签: objective-c ios

我有一份生日清单。从b'days列表中,我需要选择在接下来的30天内发生的所有b'days。

例如:今天的日期是07/13,然后我需要列出在07/13和08/13之间发生的所有b'day。

是否有任何内置方法以这种方式选择日期。

提前致谢

2 个答案:

答案 0 :(得分:2)

您可以使用NSPredicate

NSDate *now = [NSDate date];
NSDate *later = [now dateByAddingTimeInterval:(30*24*60*60)];
NSPredicate *pre = [NSPredicate predicateWithFormat:@"SELF >= %@ AND SELF <= %@", now, later];
NSArray *upcomingBirthdays = [birthdays filteredArrayUsingPredicate:pre];

答案 1 :(得分:0)

您必须自己为逻辑工作,这里是“日期和时间编程指南”的链接。它包含一些示例代码,用于检查“日期”是否在一周内。可能是个好地方。

Apple's guide