我需要检查当前日期是否在夏令时期间。用伪代码是这样的:
let date = NSDate() if date.isDaylightSavingsTime { print("Success") }
我无法在互联网上的任何地方找到解决方案。
一个NSDate人代表一个绝对的时间点。要确定日期是否在夏令时期间,需要在 时区 的上下文中进行解释。
NSDate
因此,您将在类中而不是在类中找到该方法。例:NSTimeZone``NSDate
NSTimeZone``NSDate
let date = NSDate() let tz = NSTimeZone.localTimeZone() if tz.isDaylightSavingTimeForDate(date) { }
Swift 3/4的更新:
let date = Date() let tz = TimeZone.current if tz.isDaylightSavingTime(for: date) { print("Summertime, and the livin' is easy ... 🎶") }