Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa NSXMLParser-原始数据是什么?_Cocoa - Fatal编程技术网

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];
}