从日期中提取所有日期成分

时间:2018-09-20 10:30:28

标签: ios objective-c swift nsdate nsdatecomponents

(令我惊讶的是,我找不到任何地方都可以问这个问题,听起来很基本。我可能会遗漏一些东西...)

是否可以创建与Date / NSDate对象(日期,时间,日历,timeZone)完全匹配的DateComponents()对象,而不必指定我们要包含的所有组件?

一个具体用例示例:UNCalendarNotificationTrigger的init方法将DateComponents作为参数,我们希望将该通知设置为作为Date / NSDate对象保留的特定日期和时间,因此,我们需要提取其dateComponents。

1 个答案:

答案 0 :(得分:4)

您可以使用Calendar.dateComponents(in:,from:)实现目标。这样,您只需要提供TimeZone,就可以从DateComponents对象中提取所有Date

let components = Calendar.current.dateComponents(in: TimeZone.current, from: Date())