我正在将 NSString 转换为 NSDate 并遇到最终转换中年份错误的问题。
我的输入日期是2013-05-27 03:38:20 +0000
(在下面的代码中列为 lastEntry.date)
我的转换代码如下:
//Convert String to NSDate
NSDateFormatter *originalDateFormat = [[NSDateFormatter alloc] init];
[originalDateFormat setDateFormat:@"YYYY-MM-dd hh:mm:ss Z"];
[originalDateFormat setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
NSDate *originalEndDate = [originalDateFormat dateFromString:lastEntry.date];
NSLog(@"Converted End Date = %@", [originalDateFormat stringFromDate:originalEndDate]);
我得到的最终输出是:Converted End Date = 2012-05-27 03:38:20 +0000
我不知道为什么我在这次转换中损失了一年。到目前为止,在我的所有研究中,似乎这个转换过程中最难的部分是确保格式正确,并且由于我的输出日期格式正确,我觉得还有其他问题。我有什么遗漏或做错了吗?