我要搭乘航班:
现在需要找到我的datetime(本地时区)和datetime(来自服务)之间的时差。
问题:我的本地日期时间与排期的日期和时间之间的黑白差异(可以是任何时区,因此在服务中我会得到LOCALOFFSET VALUE,例如:“-7:00”或“ -6:00”
例如: 航班日期时间:2018-12-28 05:15:00,本地偏移:-06:00 我的本地日期时间:2018-12-28 14:08:00
需要找到区别吗?
谢谢
答案 0 :(得分:1)
通过使用来自服务的localoffset并使用swift中的可用方法来解决此问题,TimeZone(secondsFromGMT:offset):
func findFlightTimeInUTCFormat(dateString:String, localOffSet:String) -> Date? {
let gmtTimeString = dateString
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
formatter.timeZone = TimeZone(secondsFromGMT: -6*60*60)
var finalDate:Date?
// original string in GMT
guard let date = formatter.date(from: gmtTimeString) else {
print("can't convert time string")
return finalDate
}
finalDate = date
return finalDate
}
已解决且工作正常。