objective-c - objective-c : Reading text files

标签 objective-c ios text bundle

我以前做过,但现在对我不起作用。我在做:

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

并且每次我NSLog路径和内容时都会返回(null)。谁能看到我做错了什么?

最佳答案

如果您将其传递给它无法打开的路径,则内容将为 nil(其记录为 '(null)')。因此,您唯一的问题是 NSBundle 的相关实例无法在应用程序包的资源部分中找到 test.txt。

你应该:

  1. 检查文件是否在您的 Xcode 项目中;如果是的话,
  2. 检查它是否包含在所选目标下方的“复制 bundle 资源”阶段(在正常 Xcode 窗口布局左侧的项目 TreeView 中),如果包含,则
  3. 查看生成的应用程序包(找到您的产品,右键单击,选择“在 Finder 中显示”,从 Finder 中右键单击应用程序并选择“显示包内容”,然后在其中查找您的文件)以确保它就在那里。

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

关于objective-c - objective-c : Reading text files,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5043864/

相关文章:

iphone - 处理单例对象

php - Apple 推送通知的时长

ios - 自定义委托(delegate)不响应 iOS

css - 如果您将鼠标悬停在任一 div 上,则使两个相邻的 div 一起滚动

mongodb - 为什么我在Mongodb3.4文本搜索中无法进行排序操作

iphone - 在 RemoteViewControllers 上禁用 UIAppearance-API

ios - 如果来自 UIViewController 的对象如何仅获取我创建的自定义属性的名称(在运行时)?

ios - Bonjour 服务发现找不到主机

ios - SceneKit 相机节点在捏手势时重置

Java 编程 - 允许扫描仪中出现空行