在我的应用程序中,我正在使用CoreData
。某些日期值作为NSString
存储在coredata中。
在我的Interface Builder
我有一个文本字段。当我在我的文本字段中输入日期时此日期将比较保存在coredata中的日期。
解决方案是什么。我只是通过这种方式Example它不适用于我的项目,因为我想在我的NSPredicate
方法上将字符串转换为日期。
我的代码是
NSPredicate *p3 = [NSPredicate predicateWithFormat:@"acc_date >= %@ AND acc_date<=%@", theDate, date1];
此处acc_date
是数据库中的日期,存储为字符串 theDate , date1 是我的输入
答案 0 :(得分:2)
如果您继续将日期存储为字符串,则无法像尝试那样进行任何比较。
如果您将它们存储为实际的NSDate
个实例,那么您的比较就可以了。问题不在于您的谓词,而在于您如何将数据存储在Core Data中。
我建议迁移您的数据库,无论是重度迁移还是手动迁移。如果您的数据是一次性的,那么我会更改字段并重置您的数据库以使用NSDate
个实例。