I want to change UTC time to local time by NSDateFormatter.
But it doesn't work what I expect.
-(NSDateFormatter *)df
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ"];
dateFormatter.timeZone = [NSTimeZone defaultTimeZone];
return dateFormatter;
}
...
NSDate *now = [NSDate date];
NSString *dateStr = [[self df] stringFromDate:now];
// dateStr is correct.
//dateStr is 2013-12-26 20:32:26 +0900
NSLog(@"dateStr is %@",dateStr);
NSDate *date = [[self df] dateFromString:dateStr];
// date is wrong.
//date is 2013-12-26 11:32:26 +0000
NSLog(@"date is %@",date);
Why date is not equal to dateStr.
I want date return 2013-12-26 10:32:26 +0900
Do you have any idea? Thanks in advance.