【发布时间】:2017-01-20 17:14:30
【问题描述】:
我想从日期选择器中选择的日期获取开始和结束时间。
这是我的代码
func handleDatePicker(sender: UIDatePicker) {
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd hh:mm:ss"
let startOfDay = NSCalendar.currentCalendar().startOfDayForDate(sender.date)
let components = NSDateComponents()
components.hour = 23
components.minute = 59
components.second = 59
let endOfDay = NSCalendar.currentCalendar().dateByAddingComponents(components, toDate: startOfDay, options: NSCalendarOptions(rawValue: 0))
}
但我得到的输出类似于2016-10-12 12:00:00
我的问题是如何获得这样的输出
12-09-2016 00:00:00 AND 12-09-2016 23:59:59
【问题讨论】:
-
24 小时制的格式是
HH,而不是hh:stackoverflow.com/questions/2135267/…,stackoverflow.com/questions/25657123/…。 -
检查this article。对我很有帮助
-
你在这里得到什么输出 sender
-
仅供参考:一天的结束不是 23:59:59。 iOS 可以处理纳秒,因此在 23:59:59 和 00:00:00 之间至少有 10 亿个可能的
Dates。一天的结束因此被定义为第二天的开始。您应该计算第二天的开始时间(定义明确)并使用<比较。
标签: ios swift nsdate nsdateformatter uidatepicker