Why do I get "2010-01-01 00:00:00 +900" from "2010-12-31 15:00:00 +000"?

Posted by mikezang on Stack Overflow See other posts from Stack Overflow or by mikezang
Published on 2010-12-31T12:50:32Z Indexed on 2010/12/31 12:54 UTC
Read the original article Hit count: 195

I have NSDate, it will be shown as below if I used NSLog(@"%@", date.description); 2010-12-31 15:00:00 +0000

it will be shown as if I used NSLog(@"%@", [date descriptionWithLocale:[[NSLocale currentLocale] localeIdentifier]]); Saturday, January 1, 2011 12:00:00 AM Japan Standard Time

But it will be show as below if I used NSLog(@"%@", [date formattedDateString]); 2010-01-01 00:00:00 +0900

Where do I make mistake?

  • (NSString *)formattedDateString { return [self formattedStringUsingFormat:@"YYYY-MM-dd HH:mm:ss ZZZ"]; }

  • (NSString *)formattedStringUsingFormat:(NSString *)dateFormat { NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:dateFormat]; NSString *ret = [formatter stringFromDate:self]; [formatter release]; return ret; }

© Stack Overflow or respective owner

Related posts about ios

Related posts about nsdate