Cocoa NSXMLParser-原始数据是什么?
我使用以下代码创建了Cocoa NSXMLParser-原始数据是什么?,cocoa,Cocoa,我使用以下代码创建了NSXMLParser对象: - (void) foo:(NSMutableString *)string { NSXMLParser *parser = [[NSXMLParser alloc] initWithData:[string dataUsingEncoding:NSUTF8StringEncoding]]; [parser setDelegate:self]; [parser parse]; } 有时我在运行解析器后会出错(在出错时调用
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];
}