Iphone 将nsstring 2013-04-18T06:53:26-04:00转换为nsdate

Iphone 将nsstring 2013-04-18T06:53:26-04:00转换为nsdate,iphone,objective-c,Iphone,Objective C,我正在尝试将字符串2013-04-18T06:53:26-04:00转换为NSDate。 这是我的密码 NSDateFormatter*rfc3339DateFormatter=[[NSDateFormatter alloc]init]; NSLocale*enUSPOSIXLocale=[[NSLocale alloc]initWithLocaleIdentifier:@“en_US_POSIX”]; 断言(enUSPOSIXLocale!=nil); [rfc3339DateFormatte

我正在尝试将字符串
2013-04-18T06:53:26-04:00
转换为NSDate。 这是我的密码

NSDateFormatter*rfc3339DateFormatter=[[NSDateFormatter alloc]init];
NSLocale*enUSPOSIXLocale=[[NSLocale alloc]initWithLocaleIdentifier:@“en_US_POSIX”];
断言(enUSPOSIXLocale!=nil);
[rfc3339DateFormatter setLocale:enUSPOSIXLocale];
[rfc3339DateFormatter setDateFormat:@“yyyy-MM-ddTHH:MM:SSZZZ”];
NSLog(@“str%@,[rfc3339DateFormatter dateFromString:@“2013-04-18T06:53:26-04:00”);
我总是(空)

用这个来解决问题

[rfc3339DateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZZ"];

我认为您需要在日期格式中用单引号将
T
括起来,因为它是文字字母T,而不是格式字符串。@Eimantas您应该添加它作为答案,这就是问题所在。请尝试在T和时区amo、samo、samo周围加上一些空格。。。无聊,无聊,无聊…检查这个链接