2010-12-06 56 views
0

我从具有这种形式正确形式dateFormatter

12/10/2010 19:30:00

,我用这种形式的setDateFormat方法的一个XML饲料拉动日期识别日期

[dateFormatter setDateFormat:@"MM/dd/yyyy HH:mm:ss"]; 

,但它不断地抛出一个异常说,结果是零日期,导致我怀疑我没有合适的形式承认的日期。

我是否拥有正确的表单,还是错过了某些东西?

感谢您提供的任何见解。

下面是关于函数中引发此错误的详细信息 - 以及它找到的第一个日期发生错误 - 这是此日期12/10/2010 19:30:00:

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{ 

    if ([elementName isEqualToString:@"item"]) { 
     [item setObject:self.currentTitle forKey:@"title"]; 
     [item setObject:self.currentType forKey:@"type"]; 
     [item setObject:self.currentSummary forKey:@"description"]; 
    [item setObject:self.currentTeacher forKey:@"teacher"]; 
    [item setObject:self.currentDate forKey:@"pubdate"]; 
    [item setObject:self.currentLink forKey:@"link"];    

    // Parse date here 
    NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; 


    [dateFormatter setDateFormat:@"MM/dd/yyyy HH:mm:ss"]; 


    NSDate *date = [dateFormatter dateFromString:self.currentDate]; 


     [item setObject:date forKey:@"date"]; 

     [items addObject:[item copy]]; 
    } 
} 
+0

格式看起来不错。显示更多周围的代码,包括提供例外的实际行。它是否仅在这个特定日期+时间或全部返回零? – Anna 2010-12-06 15:18:42

+0

在dateFromString行之前,NSLog记录self.currentDate的值。它在调试器控制台中显示了什么? – Anna 2010-12-06 15:54:12

回答

0

格式对我来说很不错。 格式化前检查XML中的日期返回。 如果您有任何其他标签/字符比日期dateFormatter给出错误。