目标C,NSXML解析器委托方法永远不会被调用

时间:2011-03-21 07:09:37

标签: objective-c nsxmlparser

xmlParser = [[NSXMLParser alloc]initWithData:[xmlString dataUsingEncoding:NSASCIIStringEncoding]];
[xmlParser setDelegate:self];
[xmlParser parse];

我在ApplicaitonDelegate.m文件中有这个,我试图在 - didFinishLaunchingWithOptions方法中解析xml文档。我在头文件中实现NSXML委托,但委托方法永远不会被调用..

1 个答案:

答案 0 :(得分:2)

您正在使用NSASCIIStringEncoding。 您确定您的XML是ascii编码的吗? 如果您不知道,请尝试使用NSUTF8StringEncoding。无论如何,这是一个更好的选择,因为它“包含”ASCII。

您是否实现了parseErrorOccurred委托消息?

- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError

如果存在与编码相关的错误,则应该收到错误,例如

NSXMLParser error=31 "The operation couldn’t be completed. (NSXMLParserErrorDomain error 31.)"