Ios Swift日期前4天

Ios Swift日期前4天,ios,swift,Ios,Swift,我在计算日期之间的天数 我想计算到新年的天数或分钟数。 我尝试了一种我在另一篇文章中看到的方法,使用dateComponents,但我无法计算 如果有人能帮助我,我会非常高兴 谢谢大家! 了解您试图给出的建议会很有帮助,但是,您可以使用NSCalendar的组件来完成这一点 let calendar = Calendar.current let startOfDay1 = calendar.startOfDay(for: date1) let startOfDay2 = calendar.sta

我在计算日期之间的天数

我想计算到新年的天数或分钟数。 我尝试了一种我在另一篇文章中看到的方法,使用dateComponents,但我无法计算

如果有人能帮助我,我会非常高兴


谢谢大家!

了解您试图给出的建议会很有帮助,但是,您可以使用NSCalendar的组件来完成这一点

let calendar = Calendar.current
let startOfDay1 = calendar.startOfDay(for: date1)
let startOfDay2 = calendar.startOfDay(for: date2)
let components = calendar.dateComponents([.day], from: startOfDay1, to: startOfDay2)
您可以自定义上述内容,从日期对象获取更具体的分钟数


编辑:对于Swift 4,您不需要桥接。您可以直接使用日历(上面编辑的代码)

哪一个职位?你试了什么?它是如何不起作用的?您可以发布您尝试使用的代码吗?为什么要使用
NSCalendar
?这是SWIFT4,你不应该使用基础数据类型,除非你有很好的理由这样做。你应该使用
Calendar
而不是
NSCalendar
。很好的一点是@DávidPásztor NSCalendar bridges Calendar有自己的组件。如果你想进行日历计算,而不是时间敏感,你应该使用中午而不是午夜。请注意,并非每天都从12:00开始查看第32页。您还可以观看视频@LeoDabus:startOfDay(for:)是否解决了该问题?我希望它返回一天中的第一个有效日期,不一定是午夜。@LeoDabus:您的示例对我不适用,可能是因为时区不同。但不管怎样:你是对的,这确实有区别,我同时得出了相同的结论。