MagicalRecord 日期时间比较
Posted
技术标签:
【中文标题】MagicalRecord 日期时间比较【英文标题】:MagicalRecord datetime comparison 【发布时间】:2015-05-28 07:57:03 【问题描述】:我在比较日期时间时遇到问题。我可以正常检索它,但无法比较它。我有一个日期时间和字符串实现是这样的:
yyyy-MM-dd'T'HH:mm:ss
没关系。我使用格式化程序:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];
NSDate *dateTo = [formatter dateFromString:[banners[i] DateValidTo]];
这给了我这个:2016-06-19 22:00:00 +0000
我保存了这条记录,它在 Sqlite 中写入浮点数? 我需要比较日期,过期日期。我用这个:
NSPredicate *expiredDateFilter = [NSPredicate predicateWithFormat:@"dateTo < %@", [NSDate date];
NSArray *banners = [Banner MR_findAllWithPredicate:expiredDateFilter];
这不返回任何内容。我有一个记录,它的过期日期是今年四月。我尝试将其保存为双精度(NSNumber)并使用 timeIntervalSince1970 并以这种方式保存。这当然是双重的,所以这又是一个问题。我的问题是,如何正确地将 Datetime 保存到数据库并确保它可以进行比较?
【问题讨论】:
【参考方案1】:你可以使用NSDate's
compare: method:
NSComparisonResult result = [Date2 compare:Date1];
if(result==NSOrderedAscending)
NSLog(@"Date1 is in the future");
else if(result==NSOrderedDescending)
NSLog(@"Date1 is in the past");
else
NSLog(@"Both dates are the same");
【讨论】:
我不想从数据库中取出所有记录并在这样的代码中进行比较。我只想从数据库中获取过期日期的记录。以上是关于MagicalRecord 日期时间比较的主要内容,如果未能解决你的问题,请参考以下文章
AFNetworking 的 Magical Record 导入问题
尝试将 Magical Record 与 Kiwi 一起使用时构建测试时出错