我的班级有一个名为date_time的日期时间字段。 在下面的循环中,我希望找到所有具有相同日期的实例,其中时间将被忽略。
for (int day=0; day < days.length; day++) {
[components setDay:day];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date_time == %@", [cal dateFromComponents:components]];
}
上面的谓词不起作用,因为date_time也包含时间。 有没有办法实现这个目标?
答案 0 :(得分:1)
我认为这对你有用:
[components setDay:day];
NSDate *dateFromComponents = [cal dateFromComponents:components];
NSDate *nextDayDate = [NSDate dateWithTimeInterval:24.0*60.0*60.0
sinceDate:dateFromComponents];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date_time >= %@ && date_time < %@",
dateFromComponents, nextDayDate] ;