2013-08-06 2 views
0

Я создал NSXMLParser объект, используя следующий код:NSXMLParser - каковы исходные данные?

- (void) foo:(NSMutableString *)string 
{ 
    NSXMLParser *parser = [[NSXMLParser alloc] initWithData:[string dataUsingEncoding:NSUTF8StringEncoding]]; 
    [parser setDelegate:self]; 
    [parser parse]; 
} 

и иногда я получаю ошибки после выполнения синтаксического анализа (метод делегата вызывается при ошибке):

- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError 
{ 
    LOGE(@"XML parser error in line:%ld column:%ld. Retrying..", [parser lineNumber], [parser columnNumber]); 
    [parser abortParsing]; 
    [parser parse]; 
} 

Как я могу извлечь обратно оригинал string или data из анализатора, когда я получаю ошибки?

ответ

0

Если вам нужно использовать эти указатели позже, тогда вы несете ответственность за сохранение указателей на те объекты, а не на парсер.

Анализатор никогда не знает ни слова, поскольку он никогда не передается ему. Было бы также ужасно неэффективно, если бы парсер держал указатель на данные.

Смежные вопросы