【发布时间】:2018-01-27 11:12:33
【问题描述】:
我在 Swift 中处理我的应用程序的本地时间日期时遇到问题。我想在午夜创建今天的日期,在 23:59 创建另一个实例。基本上 2 个日期涵盖当天的整个日期(想法是加载今天的所有日历条目)。我在操场上的代码:
import Foundation
let dateFormatter = DateFormatter()
let date = Date()
dateFormatter.dateFormat = "yyyy-MM-dd"
let todayStartDate = dateFormatter.date(from: dateFormatter.string(from: date))
let todayEndDate = dateFormatter.date(from: dateFormatter.string(from: Calendar.current.date(byAdding: .day, value: 1, to: date)!))
print(todayStartDate!)
print(todayEndDate!)
我最终有时间在那里:
“2018 年 1 月 27 日凌晨 12:00”
打印输出:
“2018-01-26 23:00:00 +0000\n”
【问题讨论】:
-
一切都是正确的。打印
Date始终使用 GMT 时区,例如比较stackoverflow.com/questions/39937019/…。 – 所以“2018-01-26 23:00:00 +0000”是您所在时区的 2018-01-27 午夜。
标签: swift date swift3 icalendar