iPhone - NSDate - NSString - NSDate之间的转换

时间:2011-02-12 02:49:51

标签: objective-c nsstring nsdate

我正在使用以下代码获取NSDate,将其转换为NSString然后返回NSDate。

NSDateFormatter* dtFormatter = [[NSDateFormatter alloc] init];
[dtFormatter setDateFormat:@"MM/dd/YYYY"];

NSDate* dt = [NSDate date];
NSString* strDate = [dtFormatter stringFromDate:dt];
NSLog(@"First = %@",strDate);
NSDate* dt2 = [dtFormatter dateFromString:strDate];
NSString* strDate2 = [dtFormatter stringFromDate:dt2];
NSLog(@"Second = %@",strDate2);

但我得到的输出是不同的:

2011-02-12 08:17:21.851 SF Calculation[16297:207] First = 02/12/2011
2011-02-12 08:17:21.852 SF Calculation[16297:207] Second = 12/26/2010

为什么在将NSDate转换为NSString并从NSString转换为NSDate时会有所不同?

1 个答案:

答案 0 :(得分:9)

而不是:

[dtFormatter setDateFormat:@"MM/dd/YYYY"];

使用:

[dtFormatter setDateFormat:@"MM/dd/yyyy"];