作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 CoreData 查找超过 2 天的记录,以便进行一些处理。如何使用 Swift 查找超过两天的记录?
这是我的尝试:
class func findOldPics() {
var appDel: AppDelegate = (UIApplication.sharedApplication().delegate as AppDelegate)
var context: NSManagedObjectContext = appDel.managedObjectContext!
var managedObject: NSManagedObject!
var fetchRequest = NSFetchRequest(entityName: "Video")
var date = NSDate(timeIntervalSinceNow: 3600)
fetchRequest.predicate = NSPredicate(format: "date <= %@", date)
if let fetchResults = appDel.managedObjectContext!.executeFetchRequest(fetchRequest, error: nil) as? [NSManagedObject] {
if fetchResults.count != 0{
NSLog("***************** found film! updating status %@", fetchResults)
} else {
println("***************** no films found")
} // else
}
}
最佳答案
假设 date
是 Video
实体的一个属性,并且它包含此查询的有效值,
timeIntervalSinceNow:
使用负数才能获取过去的日期。您使用的是 future 的日期。获取 2 天前的日期的更好方法是使用 NSCalendar,而不是假设某个秒数。如果夏令时在过去 2 天开始或结束怎么办?您可以通过以下方式可靠地获取 2 天前的日期:
let twoDaysAgo = NSCalendar.currentCalendar().dateByAddingUnit(.DayCalendarUnit,
value: -2, toDate: NSDate(), options: nil)
关于iphone - 如何在 Swift 中使用 CoreData 获取 n 天前的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28619720/
我是一名优秀的程序员,十分优秀!