【发布时间】:2016-01-11 00:10:52
【问题描述】:
我正在通过特定 NSDate 在 coredata 中搜索记录,但它没有返回任何结果。它也不会抛出任何错误..
当我遍历所有记录时,我可以将日期输出到控制台。
这里是谓词.. created 是 NSDate
let resultPredicate = NSPredicate(format: "created == %@", created)
..在挖掘了更多之后,问题似乎出在我处理时间戳的 JSON 时:
var createdJSON:String = subJson["created"].string!
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
dateFormatter.timeZone = NSTimeZone(abbreviation: "EST")
var dateConverted:NSDate = dateFormatter.dateFromString(createdJSON)!
时间存储在东部时区下的 MySQL 数据库中,也许这是我的错误?即使我可以将该 JSON 响应转换为看起来是相同的值,但也许它从一开始就必须是 UTC?
-编辑-
转换为 UTC 没有帮助。
【问题讨论】:
-
请记住,
NSDate精确到毫秒。您不可能有任何日期等于created到毫秒值。 -
啊,可能是这样......它是从“yyyy-MM-dd HH:mm:ss”的MySQL格式存储的,让我看看添加ms会做什么
-
将毫秒设置为 nsdate 然后使用它不起作用...