我正在尝试将查询作为 URL 的一部分发送以获取 XML 文件,然后尝试使用 NSXMLParser 和 initWithContentsOfURL 解析 XML 文件。但是解析器无法解析文件。我用相同的文件测试了解析器,但是这次文件保存在服务器上(它没有被生成)并且它工作得很好,所以我知道这不是解析器的问题。
我开始认为它不会解析它,因为我需要在尝试解析它之前加载文件,或者给 initWithContentsOfURL 时间来加载内容。因此,我尝试将这些内容放在 NSString 和 NSData 中,并使用睡眠功能以及使用块,但这也不起作用。
解决这个问题的最佳方法是什么?
这是一些代码:
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];
如果您有更多问题或希望查看更多代码,请告诉我。谢谢!