我最近注意到试图找出两个日期之间的差异(以秒为单位)的奇怪行为。
我有一个采用 GMT 时间的日期字符串:
2016-01-07 01:09:47.289000
我想知道从那时起到现在有多少秒。
但我注意到,当我使用 NSDate() 时,我得到的是本地时间,而不是 GMT 时间。
我该如何去做呢?
最佳答案
使用 NStimeZone 类设置时区
let date = NSDate()
var formatter = NSDateFormatter()
let gmt = NSTimeZone(abbreviation: "GMT")
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss ZZZ"
formatter.timeZone = gmt
formatter.stringFromDate(date)
为了进行比较,请将当前日期从 NSDate 转换为“GMT”,然后计算两者之间的时间间隔。
关于Swift 获取 GMT 中两个日期之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34646281/