3
我有在生產應用程序從用戶輸入的日期計算GMT日期下面的代碼:的NSDate - GMT在iPhone上
NSDate *localDate = pickedDate;
NSTimeInterval timeZoneOffset = [[NSTimeZone defaultTimeZone] secondsFromGMT]; // You could also use the systemTimeZone method
NSTimeInterval gmtTimeInterval = [localDate timeIntervalSinceReferenceDate] - timeZoneOffset;
NSDate *gmtDate = [NSDate dateWithTimeIntervalSinceReferenceDate:gmtTimeInterval];
的代碼工作正常,直到可怕的夏令時生效上週在英國發生的一切。
如何將日期轉換爲GMT,同時考慮到夏令時?
可以使用NSDateFormatter以及轉換成NSDate的: http://stackoverflow.com/questions/1578577/nsdateformatter-datefromstring-will-not-parse-a-particular-date-string/1586083#1586083 – 2010-04-06 00:25:44
@ Epsilon Prime:是的,但他特別提出了使用日期和時區來處理不一定是字符串的問題。我選擇了這個例子,因爲這是人們希望從當地時區轉換到另一個基礎(如GMT)的常見原因。 – 2010-04-06 00:28:57