Objective c NSXMLDocument initWithContentsOfURL;已将无法识别的选择器发送到实例

Objective c NSXMLDocument initWithContentsOfURL;已将无法识别的选择器发送到实例,objective-c,osx-snow-leopard,Objective C,Osx Snow Leopard,如果我使用下面的代码,我的项目会将xmldoc值设为nil,但如果我创建了一些示例项目,它会将xml节点(即html文件内容值)设为nil。我的项目有很多文件,但这并不重要,即使我在项目中调用“applicationdifinishlaunting”方法,它也会将值设为null NSString *string = [[NSBundle mainBundle] pathForResource:@"xxx" ofType:@"html"]; id xmlDoc = [[NSXMLDocumen

如果我使用下面的代码,我的项目会将xmldoc值设为nil,但如果我创建了一些示例项目,它会将xml节点(即html文件内容值)设为nil。我的项目有很多文件,但这并不重要,即使我在项目中调用“applicationdifinishlaunting”方法,它也会将值设为null

 NSString *string = [[NSBundle mainBundle] pathForResource:@"xxx" ofType:@"html"];
 id xmlDoc = [[NSXMLDocument alloc] initWithContentsOfURL:[NSURL fileURLWithPath:string] options:0 error:&error];

您可以检查很多内容-首先确保字符串不是nil,并且与您期望的内容相对应(资源可能不在那里,如果您编写一个附加组件,则可能会混淆返回的包…)。其次,您应该直接使用pathForResource(URLForResource)的URL变量。这将避免您在字符串和URL之间进行“转换”,并可能在那里出现问题

发布堆栈跟踪。检查您是否在应用程序包中创建了一个名为xxx.html的文件。这是一个注释,而不是答案。我检查了我的字符串,它有它的值(路径),我看到了项目资源(包内容)路径,它也包含我的文件,但它仍然给出相同的错误并返回空值。