在使用 SQL 查询之前如何检查日期是否有效
request.predicate = NSPredicate (format: "% @ <= AND myDate% @> = myDate" startDate, endDate)
闰年出现错误,例如 2016 年 2 月 30 日。
// code form comment...
let startDate:NSDate = dateFormatter.dateFromString("2016-10-01")!
let endDate:NSDate = dateFormatter.dateFromString("2016-10-29")!
最佳答案
DateFormatter
的date(from:)
方法生成的日期的返回值是可选的。如果返回nil
,则日期无效,否则有效。
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
if let date = dateFormatter.date(from:"2016-02-30") {
print(date) // if this prints date is valid
}
else {
print("Date is Invalid") // if this prints date is invalid
}
Date
不能使用超出真实日历日期范围的无效日期字符串进行实例化。
如果您要问的是某个日期是否介于其他两个日期之间,请参见此处:https://stackoverflow.com/a/40057117/1694526
关于swift - 如何在 Swift 中检查有效的 Date(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40261789/