在使用
进行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")!
答案 0 :(得分:3)
DateFormatter
的{{1}}方法生成的日期的返回值是可选的。如果返回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
}
。
如果您要问的是日期是否介于其他两个日期之间,请参阅此处:https://stackoverflow.com/a/40057117/1694526
答案 1 :(得分:0)
使用DateFormatter类...它可用于检查任何字符串是否为有效日期,因此字符串可以转换为nsdata。