Ios 在对象中设置NSDate

Ios 在对象中设置NSDate,ios,objective-c,object,nsdate,Ios,Objective C,Object,Nsdate,我有一个对象,SCHRss,它在头文件中设置了一个NSDate。代码如下所示: @property (nonatomic, strong) NSDate * time; SCHRss *rssObject = [[SCHRss alloc] init]; [rssObject setTitle:self.title]; [rssObject setLink:self.link]; [rssObject setImage:self.image]; NSDateFormatter *dateF

我有一个对象,
SCHRss
,它在头文件中设置了一个
NSDate
。代码如下所示:

@property (nonatomic, strong) NSDate * time;
SCHRss *rssObject = [[SCHRss alloc] init];

[rssObject setTitle:self.title];
[rssObject setLink:self.link];
[rssObject setImage:self.image];

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormat setLocale:[NSLocale currentLocale]];
[dateFormat setDateFormat:@"EEEE, d MMMM yyyy h:mm:ss zzzz"];
[dateFormat setFormatterBehavior:NSDateFormatterBehaviorDefault];
[rssObject setTime:[dateFormat dateFromString:self.time]];

[self.feeds addObject:rssObject];
我想创建一个
SCHRss
对象并设置
NSDate
。目前代码如下所示:

@property (nonatomic, strong) NSDate * time;
SCHRss *rssObject = [[SCHRss alloc] init];

[rssObject setTitle:self.title];
[rssObject setLink:self.link];
[rssObject setImage:self.image];

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormat setLocale:[NSLocale currentLocale]];
[dateFormat setDateFormat:@"EEEE, d MMMM yyyy h:mm:ss zzzz"];
[dateFormat setFormatterBehavior:NSDateFormatterBehaviorDefault];
[rssObject setTime:[dateFormat dateFromString:self.time]];

[self.feeds addObject:rssObject];
self.time
正在返回正确的值。但是当我从控制台调用
[rssObject time]
时,返回了
nil
。有什么想法吗


作为参考,时间戳如下所示:
Tue,2015年6月16日06:41:58+0000

您的日期格式实际上与时间戳字符串不匹配。使用正确的日期格式。似乎适用于
self.date
。那么正确的格式是什么呢?请查看日期格式说明符的规范。您的时间戳中有三个字母的工作日。但您使用的是
EEEE
。看看规范对工作日格式的说明。对每一部分都做同样的操作。还请注意,如果时间戳总是用英语,则可能需要将格式化程序的语言环境设置为特殊语言环境
en_US_POSIX
。如果您不这样做,那么对于任何不使用英语的用户,代码都将失败。