我已经阅读了DateFormatting指南,但我仍然无法理解为什么我的日期转换不符合要求。例如:
NSString *str1 = @"12/20/2013 12:39:55 PM";
NSDateFormatter *dateFo = [[NSDateFormatter alloc] init];
[dateFo setDateFormat:@"MM/dd/YYYY hh:mm:ss a"];
NSDate *serverDate1 = [NSDate date];
serverDate1 = [dateFo dateFromString:str1];
作为回报,我的日期为“ 2013-01-05 07:09:55 +0000 ”。 我已经尝试了很多为什么NSDate没有返回正确的日期。
任何帮助都将不胜感激。
答案 0 :(得分:1)
而不是YYYY
使用yyyy
中的dateFormat:
。
NSString *str1 = @"12/20/2013 12:39:55 PM";
NSDateFormatter *dateFo = [[NSDateFormatter alloc] init];
[dateFo setDateFormat:@"MM/dd/yyyy hh:mm:ss a"];
NSDate *serverDate1 = [NSDate date];
serverDate1 = [dateFo dateFromString:str1];
答案 1 :(得分:1)
NSString *dateWithInitialFormat = @"12/20/2013 12:39:55 PM";
NSDateFormatter *dateFo = [[NSDateFormatter alloc] init];
[dateFo setDateFormat:@"MM/dd/yyyy hh:mm:ss a"];
NSDate *serverDate1 = [NSDate date];
serverDate1 = [dateFo dateFromString:dateWithInitialFormat];
这将为您提供解决方案