我現在的設備時間--- 2013年5月9日上午10:23問題在coverting GMT時間當地時間
我把它轉換詮釋GMT與下面的代碼
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyy-MM-dd HH:mm a";
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormatter setTimeZone:gmt];
NSString *timeStamp = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"time in GMT ------ %@",timeStamp);
而且我得到了出來把儘可能
time in GMT ------ 2013-05-10 04:53 AM
然後我發現我的時區
NSTimeZone *localTime = [NSTimeZone systemTimeZone];
NSLog(@"local timezone is------ %@",[localTime name]);
出把
local timezone is------ Asia/Kolkata
現在我需要上述GMT時間轉換爲本地再寄一次用下面的代碼
NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:[localTime name]];
[dateFormatter setTimeZone:sourceTimeZone];
NSDate *dateFromString = [dateFormatter dateFromString:timeStamp];
NSLog(@"local time is ------- %@",dateFromString);
但我得到一個錯誤的出放..
local time is ------- 2013-05-09 19:23:00 +0000
爲什麼會發生這種情況? 我應該得到本地時間 - 2013年5月9日上午10:23
這些都沒有解決的問題。這並不能解釋爲什麼最終輸出顯示錯誤的時間。 – rmaddy 2013-05-10 05:12:40