我使用下面的代码从组件中获取日期。我有一个 2017-01-08 18:38:00 UTC
。我使用下面的代码从中获取日期.
var components = calendar.dateComponents([.year, .month, .day,.weekday
], from: eventModel.start_date!)
print("component day is \(String(describing: components.day!))")
但是当我打印日期时,它给我的日期是 9,而不是 8,那么代码有什么问题。请指导我如何改进这个东西。
最佳答案
打印(日历.时区)。我认为这是您本地的时区。
---------更新------------
var cps = DateComponents()
cps.year = 2017
cps.month = 1
cps.day = 8
cps.hour = 18
cps.minute = 30
print(cps)
var cal = Calendar(identifier: .gregorian)
let localDate = cal.date(from: cps)!
print(localDate) // 2017-01-08 10:30:00 +0000
let timezone = TimeZone(abbreviation: "UTC")
cal.timeZone = timezone!
let utcDate = cal.date(from: cps)!
print(utcDate) // 2017-01-08 18:30:00 +0000
关于ios - 在 swift 中使用组件日期时获取递增的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41828474/