NSDate dateFromString添加多个日期

时间:2013-06-25 18:05:31

标签: nsdate nsdateformatter

我对NSDate和NSDateFormatter非常困惑。我正在尝试从twitter REST api 1.1解析日期。看起来我的DateFormat是错误的,但我几乎100%确定它是正确的。我在执行dateFromString

后得到一个空值

这是我的代码

- (void)InitTwitterToMatchingArray
{
    NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
    [dateFormatter1 setDateFormat:@"EEE MMM dd HH:mm:ss '+0000' yyyy"];
    for (int i = 0; i < [twitterParser1 getAmountOfTweets]; i++) {
        AktuelltMatching *amObject = [AktuelltMatching alloc];
        amObject.ID = i;
        amObject.type = @"twitter";
        NSString *dateString1 = [twitterParser1 getDateForIndex:i];
        NSLog(@"date BEFORE parse : %@", dateString1);
        amObject.date = [dateFormatter1 dateFromString:dateString1];
        [AktuelltMatchingArray addObject:amObject];
        NSLog(@"date AFTER parse %@", amObject.date);
    }
}

这是我的日志

VasaSvahnFirstPrototype[481:907] date BEFORE parse : Fri Apr 26 22:44:06 +0000 2013
2013-06-25 20:03:56.505 VasaSvahnFirstPrototype[481:907] date AFTER parse (null)
2013-06-25 20:03:56.506 VasaSvahnFirstPrototype[481:907] date BEFORE parse : Fri Apr 26 22:43:48 +0000 2013
2013-06-25 20:03:56.507 VasaSvahnFirstPrototype[481:907] date AFTER parse (null)
2013-06-25 20:03:56.508 VasaSvahnFirstPrototype[481:907] date BEFORE parse : Wed Apr 10 13:51:06 +0000 2013
2013-06-25 20:03:56.509 VasaSvahnFirstPrototype[481:907] date AFTER parse (null)
2013-06-25 20:03:56.509 VasaSvahnFirstPrototype[481:907] date BEFORE parse : Fri Mar 22 14:51:45 +0000 2013
2013-06-25 20:03:56.510 VasaSvahnFirstPrototype[481:907] date AFTER parse (null)
2013-06-25 20:03:56.513 

我在这里做错了什么?

2 个答案:

答案 0 :(得分:0)

尝试用此替换您的日期格式......

[dateFormatter1 setDateFormat:@"EEE MMM dd HH:mm:ss ZZZ yyyy"];

答案 1 :(得分:0)

请尝试以下格式:仅使用“E”代替“EEE”。

[dateFormatter1 setDateFormat:@“E MMM dd HH:mm:ss'+ 0000 yyyy”];

并查看以下链接,它可能会对您有所帮助:

http://www.cocoawithlove.com/2009/05/simple-methods-for-date-formatting-and.html