Iphone 使用字符串格式“将NSString转换为NSDate”;太阳报,2012年1月8日13:57:38+;0000“;

Iphone 使用字符串格式“将NSString转换为NSDate”;太阳报,2012年1月8日13:57:38+;0000“;,iphone,date,nsdateformatter,Iphone,Date,Nsdateformatter,我实际检索的字符串日期格式为“Sun,08 Jan 2012 13:57:38+0000” 为此,我使用日期格式“EEE,dd-MMM-yyy-HH:mm:ss-ZZZ” 但它不起作用 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZZ"]; NSLog(@"%@",[dict objectForK

我实际检索的字符串日期格式为“Sun,08 Jan 2012 13:57:38+0000” 为此,我使用日期格式“EEE,dd-MMM-yyy-HH:mm:ss-ZZZ” 但它不起作用

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZZ"];
NSLog(@"%@",[dict objectForKey:@"created_at"]);
NSDate *dateFromString = [dateFormatter dateFromString:[dict objectForKey:@"created_at"]];
NSLog(@"%@",dateFromString);
对于第一个NSLog,它显示我“Sun,2012年1月8日13:57:38+0000” 但第二个是(空)

我不明白我错在哪里。 如果你看到什么不对劲,请告诉我


谢谢

您的日期字符串是英文的。如果您的设备或模拟器区域设置为另一种语言,则可能是问题所在。如果是这样,则需要将NSDateFormatter的语言环境设置为英语

像这样:

[dateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];