У меня есть строка со временем в GMT, и я хочу сделать ее в соответствии с системным часовым поясом, но она не работает должным образом -
NSLog(@"Time Str = %@",Time);
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd-MM-yyyy hh:mm a"];
[NSTimeZone resetSystemTimeZone];
NSLog(@"system time zone = %@",[NSTimeZone systemTimeZone]);
[dateFormat setTimeZone:[NSTimeZone systemTimeZone]];
NSDate *date = [dateFormat dateFromString:Time];
[dateFormat setTimeZone:[NSTimeZone systemTimeZone]];
NSLog(@"date from string = %@",date);
NSLog(@"string from date = %@",[dateFormat stringFromDate:date]);
Выход на консоли -
////////////////////////////////////////////////////////////////////////////////////////////////
Time Str = 09-12-2011 07:57 AM
системный часовой пояс = смещение Азии/Калькутты (IST) 19800
date from string = 2011-12-09 02:27:00 +0000
строка с даты = 09-12-2011 07:57 AM
////////////////////////////////////////////////////////////////////////////////////////////////
Калькутта +5: 30 от GMT, поэтому время в дате должно быть 1:27, но показ 02:27. Также, когда я беру строку с этой даты, она показывает мне то же самое, что я использовал для создания даты, я хочу, чтобы строка обновлялась в соответствии с системным часовым поясом.
Спасибо