我开发了一个应用程序来获取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];
}
发送给我们的链接到RSS订阅源,并将您的XML解析代码添加到问题:) – deanWombourne
代码如上.....链接不能共享,因为它在我的办公网络上 –
您可以尝试格式化它还有一点 - 你的问题几乎是不可读的;) – deanWombourne