2011-11-22 74 views
-1

我开发了一个应用程序来获取RSS提要。我得到这个错误代码5的一些网址,因为其他人工作正常。错误代码5在应用程序

我知道这个错误意味着xml无效。但对于我的应用程序,我没有自己编写任何xml文件。

请告诉我这种情况的原因大概让我知道解决的办法

进口 “RootViewController.h”

@implementation RootViewController的

  • (无效)viewDidAppear:(BOOL)动画{

[super viewDidAppear:animated];

如果([故事计数] == 0){

path = @"http://172.19.58.108:8080/jwplayer/JSP/Videolist.jsp"; 
    [self parseXMLFileAtURL:path]; 
} 

}

- (无效)parseXMLFileAtURL:(的NSString *)URL {

stories = [[NSMutableArray alloc]init]; 
NSURL *xmlURL = [NSURL URLWithString:URL]; 
rssParser = [[NSXMLParser alloc]initWithContentsOfURL:xmlURL]; 
[rssParser setDelegate:self]; 
[rssParser setShouldProcessNamespaces:NO]; 
[rssParser setShouldReportNamespacePrefixes:NO]; 
[rssParser setShouldResolveExternalEntities:NO]; 
[rssParser parse]; 

}

- (void)parserDidStartDocument:(NSXMLParser *)解析器{

NSLog(@"Found file and started parsing"); 

}

- (无效)解析器:(的NSXMLParser *)解析器parseErrorOccurred:(NSError *)parseError {

NSString *errorString = [NSString stringWithFormat:@"Unable to download story feed from website (Error Code %i)", [parseError code]]; 
NSLog(@"Error parsing xml: %@", errorString); 
UIAlertView *errorAlert = [[UIAlertView alloc]initWithTitle:@"Error loading content" message:errorString delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
[errorAlert show]; 

}

- (无效)解析器:(的NSXMLParser * )解析器didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict {

currentElement = [elementName copy]; 
if ([elementName isEqualToString:@"item"]) { 

    item = [[NSMutableDictionary alloc]init]; 
    currentTitle = [[NSMutableString alloc]init]; 
    currentDate = [[NSMutableString alloc]init]; 
    currentSummary = [[NSMutableString alloc]init]; 
    currentLink = [[NSMutableString alloc]init]; 
} 

}

- (无效)解析器:(的NSXMLParser *)解析器didEndElement:(的NSString *)的ElementName的namespaceURI:(的NSString *)的namespaceURI的qualifiedName:(的NSString *)QNAME {

if ([elementName isEqualToString:@"item"]) { 

    [item setObject:currentTitle forKey:@"title"]; 
    [item setObject:currentDate forKey:@"date"]; 
    [item setObject:currentSummary forKey:@"summary"]; 
    [item setObject:currentLink forKey:@"link"]; 
    [stories addObject:[item copy]]; 
    NSLog(@"adding story: %@", currentTitle); 
} 

}

- (无效)解析器:(的NSXMLParser *)解析器foundCharacters:(的NSString *)串{

if ([currentElement isEqualToString:@"title"]) { 

    [currentTitle appendString:string]; 
} 
else if ([currentElement isEqualToString:@"link"]) { 

    [currentLink appendString:string]; 
} 
else if ([currentElement isEqualToString:@"description"]) { 

    [currentSummary appendString:string]; 
} 
else if ([currentElement isEqualToString:@"pubDate"]) { 

    [currentDate appendString:string]; 
} 

}

- (空)parserDidEndDocument:(*的NSXMLParser)分析器{

[activityIndicator stopAnimating]; 
[activityIndicator removeFromSuperview]; 
NSLog(@"all done"); 
NSLog(@"stories array has %d items", [stories count]); 
[newsTable reloadData]; 

}

+0

发送给我们的链接到RSS订阅源,并将您的XML解析代码添加到问题:) – deanWombourne

+0

代码如上.....链接不能共享,因为它在我的办公网络上 –

+0

您可以尝试格式化它还有一点 - 你的问题几乎是不可读的;) – deanWombourne

回答

-1

请检查RSS订阅您解析库类。使用标准库类,相应地更改代码。

相关问题