我正在尝试将查询作为URL的一部分发送以获取XML文件,然后尝试使用NSXMLParser和initWithContentsOfURL解析XML文件。但是解析器无法解析文件。我使用相同的文件测试了解析器,但这次文件保存在服务器上(它没有生成)并且工作得很好,所以我知道它不是解析器的问题。
我开始认为它不会解析它,因为我需要在尝试解析之前加载文件,或者给initWithContentsOfURL时间来加载内容。所以我尝试将这些内容放在NSString和NSData中,并使用sleep函数以及使用块,但这也不起作用。
解决这个问题的最佳方法是什么?
以下是一些代码:
NSString *surl = [NSString stringWithFormat:@"http://lxsrv7.oru.edu/~maria_hernandez/query.xml"];
url = [NSURL URLWithString:surl];
NSString *curl = [[NSString alloc] initWithContentsOfURL:url];
NSLog(@"URL: %@", surl);
NSLog(@"URL Content: %@", curl);
SXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:receivedData];
//Other stuff we have tried:
NSURLRequest *theRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:surl] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
NSURLResponse = nil;
NSError = nil;
receivedData = [NSURLConnection sendSynchronousRequest: theRequest returningResponse: &theResponse error: &error];
如果您有更多问题或希望查看更多代码,请与我们联系。 谢谢!
答案 0 :(得分:0)
您是否尝试为实现NSXMLParserDelegate的NSXMLParse设置委托,该委托具有用于解析文档的事件