我需要查找當前時間(以秒爲單位)和將來的開始時間(以秒爲單位從我的Web服務中獲取)之間的差異。 我已經編寫如下:由於時區不同,兩個日期時間之間的差異因秒數而異 - Swift 3
let currentTime = Int64(Date().timeIntervalSince1970)
var time = Int64(timeArr[indexPath.row])
print("\(currentTime) vs \(time)")
time = time - currentTime
print("difference in time : \(time)")
let seconds = time % 60
let minutes = (time/60) % 60
let hours = (time/3600)
我的控制檯顯示我的輸出:
1480400929 vs 1480552620
difference in time : 151691
的問題是,我現在的時間是Tue Nov 29 2016 11:58:49
和開始時間是2016-11-30 17:37:00
所以在時間的差異應該來到30小時左右,而在不同的時區需要花費大約42小時的時間。我該如何解決?我已經經歷了許多相同的問題,但沒有任何作用。任何幫助,將不勝感激。
NSDate是絕對時間點,沒有任何時區信息。 1480400929是「2016年11月29日06:28:49 GMT」和1480552620是「2016年12月1日00:37:00 GMT」。這些時間之間的差別大約是42小時。 - 請解釋你期望的結果和*爲什麼。* –
我想要我的當前時間是Tue Nov 29 2016 11:58:49和開始時間2016-11-30 17:37:00之間的區別,從服務器 – Mamta
你是否將服務器時間當作字符串?你如何將該字符串轉換爲NSDate?什麼是服務器時區?你的時區是什麼? –