У меня есть локальный XML-файл, который, как я знаю, содержит правильно сформированный XML-код UTF-8.Но NSXMLParser не будет анализировать корректность.
Путь к файлу:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *appFile = [documentsDirectory stringByAppendingPathComponent:@"example.xml"];
Сохранение XML-файла из Интернета:
NSURL *xml = [NSURL URLWithString:@"http://www.example.com/example.xml"];
NSString *data = [[NSString alloc] initWithContentsOfURL:xml encoding:NSUTF8StringEncoding error:nil];
[data writeToFile:appFile atomically:YES encoding:NSUTF8StringEncoding error:nil];
Разбор XML:
NSURL *xmlFile = [NSURL URLWithString:appFile];
NSXMLParser *addressParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlFile];
Если я попытаюсь выполнить синтаксический анализ NSURL "xml" напрямую, он сработает, но приведенный выше код вернет NULL и ошибок не будет.Я нашел другой пост здесь на форуме, описывающий ту же самую вещь, но я не могу найти его снова, и у поста не было ответов.
Надеюсь, кто-то может помочь!По сути, это всего лишь вопрос хранения веб-файла xml в файл, а затем передачи его в NSXMLParser.