如何在Swift中分离NSDate()的日期和时间部分?

How to separate the date and time components of NSDate() in Swift?

谁能告诉我如何在 Swift 中分离 NSDate() 的日期和时间组件?我看到了一些关于将日期本身分成组件(日、月、年)的事情,但没有真正了解如何仅获取时间或仅获取日、月和年。

基本上,我试图按日期过滤 table 上的数据,但同时显示输入的时间。我尝试使用普通的 ol' NSDate(),但随后过滤不起作用,因为仅按今天的日期过滤没有产生结果,因为这些条目的创建时间总是小于当前时间。

您需要使用 Calendar 来分隔日期,使用 CalendarUnit 来指定您想要的组件。

let calendar = Calendar.current
let components = calendar.components([.month, .day, .year, .hour, .minute], fromDate: Date())
print("Hour: \(components.hour)")
print("Minute: \(components.minute)")
print("Day: \(components.day)")
print("Month: \(components.month)")
print("Year: \(components.year)")