演示的是如何工作的具有过滤date objects
:
let d1 = Date().addingTimeInterval(22000000)
let d2 = Date().addingTimeInterval(23000000)
let d3 = Date().addingTimeInterval(30000000)
let dates = [d1, d2, d3, Date(), Date()]
let calendar = Calendar.current
let todayDates = dates.filter({calendar.isDateInToday($0 as Date)})
print(todayDates) // [2017-06-03 15:50:11 +0000, 2017-06-03 15:50:11 +0000]
所以你的情况,你应该做这样的:
let todayDates = historylist.filter({calendar.isDateInToday($0.createdDate as Date)})
更新:
要转换string
到Date
使用以下内容:
extension String {
var toDate: Date {
return Date.Formatter.customDate.date(from: self)!
}
}
extension Date {
struct Formatter {
static let customDate: DateFormatter = {
let formatter = DateFormatter()
formatter.locale = Locale(identifier: "en_US_POSIX")
formatter.dateFormat = "MM-dd-yyyy hh:mm:ss a"
return formatter
}()
}
}
let strDate = "06-01-2017 09:32:48 PM"
let date = strDate.toDate
What's字符串样品,需要为你写的格式@ user3804063 –
确保它是这样的:2017年6月1日下午9时32分48秒 – user3804063
对没错,但我不得不数据库结构与日期字符串, 所以我想知道如果我可以过滤日期(这是字符串) 我可以改变数据库的另一种选择,但它需要时间,因为我的项目是复杂的。 它是1年6月@Rashwan – user3804063