在一组objective-c Xcode中加载文件
Posted
技术标签:
【中文标题】在一组objective-c Xcode中加载文件【英文标题】:Load a file in a group objective-c Xcode 【发布时间】:2010-05-12 21:22:48 【问题描述】:我想从 Xcode/Objective-c 中的特定组加载文件
例如:
我有两个名为“SomeFile.txt”的文件,它们位于操作系统中的两个不同文件夹(文件夹尚未分组)中:
SomeFolderOne |- SomeFile.txt
SomeFolderTwo |- SomeFile.txt
内部 Xcode 我创建了两个文件夹,并为这两个文件添加了 REFERENCE:
SomeGroupOne |- SomeFile.txt // 这个文件是来自 SomeFolderOne 的 SomeFile.txt 的引用
SomeGroupTwo |- SomeFile.txt // 这个文件是对 SomeFolderTwo 中的 SomeFile.txt 的引用
现在我想阅读 txt 内容:
NSString *contents = [NSString stringWithContentsOfFile:@"SomeFile.tx" encoding:NSUTF8StringEncoding error:nil];
好的,它会读取“SomeFile.txt”,但有时读取的文件来自 SomeGroupOne,有时读取的文件来自 SomeGroupTwo。
如何指定要读取文件的组?
【问题讨论】:
【参考方案1】:将SomeFolderOne
和SomeFolderTwo
添加到Xcode 项目并确保选择为任何添加的文件夹创建文件夹引用 选项。
这将导致实际文件夹及其内容被复制到您的 app bundle 的 Resources 文件夹中。
然后您可以通过执行以下操作在您的应用中访问它们:
NSString* path = [[NSBundle mainBundle] pathForResource:@"SomeFile" ofType:@"txt" inDirectory:@"SomeFolderOne"];
NSString* contents = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
【讨论】:
【参考方案2】:如果您在 iPhone 平台上,请注意,无论项目中资源的目录结构如何,所有这些文件都将放在 bundle 目录的根目录中。我不确定如果您有多个同名文件会发生什么。
【讨论】:
好点。由于原始海报未指定 Mac 或 iPhone,我已作为 Mac 开发人员回答。我相信在 iPhone 上发生的事情是只有一个同名的文件会进入捆绑包,所以答案是确保文件具有不同的名称。以上是关于在一组objective-c Xcode中加载文件的主要内容,如果未能解决你的问题,请参考以下文章
目标 - C / Xcode。在 UViewController 中加载子类 UIViews xib [关闭]
如何在 Xcode 中加载本地 json 文件以进行单元测试?