NSString到NSDate的转换得到错误的结果



可能重复:
NSDateFormatter的时间错误
NSDate距离还有5小时

我正在尝试用代码将NSString转换为NSDate

result = @"2012-02-09";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:result];
[dateFormatter release];
NSLog(@"date: %@", dateFromString);

但在日志中,日期转换给出了错误的结果:

2012-02-07 13:08:29.553 Document[611:15503] date: 2012-02-08 19:00:00 +0000

有人能告诉我我的代码出了什么问题吗?

要使用NSLog来显示日期,您应该使用格式化程序,以便使用您的时区对NSDate进行格式化:

NSLog(@"date: %@", [dateFormatter stringFromDate:dateFromString]);

最新更新