destinationDate和組件的結果不同。 我該如何解決這個問題?NSDate轉換NSDateComponents問題
NSTimeZone* sourceTimeZone = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
NSTimeZone* destinationTimeZone = [NSTimeZone systemTimeZone];
NSDate* sourceDate = [NSDate date];
NSInteger sourceGMTOffset = [sourceTimeZone secondsFromGMTForDate:sourceDate];
NSInteger destinationGMTOffset = [destinationTimeZone secondsFromGMTForDate:sourceDate];
NSTimeInterval interval = destinationGMTOffset - sourceGMTOffset;
NSDate* destinationDate = [[NSDate alloc] initWithTimeInterval:interval sinceDate:sourceDate];
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [calendar components:(NSYearCalendarUnit |
NSMonthCalendarUnit |
NSDayCalendarUnit |
NSHourCalendarUnit |
NSMinuteCalendarUnit|
NSSecondCalendarUnit) fromDate:destinationDate];
NSLog(@"%@", destinationDate);
NSLog(@"%@", components);
2013年4月24日19時27分09秒+0000
日曆年份:2013 月:4 閏月:沒有 日:25 小時:4 分:27 第二:9
你是什麼問題就在這裏,日期的說明會始終處於GMT。它看起來像是你的localTimeZone比GMT落後5個小時。第一個日誌可以解釋爲4:27 PM,它與組件 – Anupdas 2013-04-24 10:38:24
中顯示的相同,你是否已經得到了答案。 – Balu 2013-04-24 11:19:52