目标C:读取文本文件

我以前做过,但现在不适合我。 我正在做:

NSString* path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"txt"]; NSString* content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:NULL]; NSLog(@"%@",path); 

并且每次当我NSLog的path和内容都返回(null) 。 任何人都可以看到我做错了什么?

内容将为零(如果您传递一个无法打开的path,则logging为“(null)”)。 所以你唯一的问题是相关的NSBundle实例无法在应用程序包的资源部分findtest.txt。

你应该:

  1. 检查文件是否在你的Xcode项目中; 如果是的话,
  2. 请检查它是否包含在所选目标下的“Copy Bundle Resources”阶段(在常规Xcode窗口布局的左侧的项目树视图中),如果是,
  3. 查看生成的应用程序包(find您的产品,右键单击,从Finder中select“在Finder中显示”,右键单击该应用程序并select“显示包装内容”,然后在那里查找您的文件),以确保它在那里。

如果它被复制,但NSBundle的相关实例找不到它,那么正在进行一些非常奇怪的事情。