如何在objective-c项目中嵌入文件并在运行时提取它



我有一个用objective-c为OS X编写的代码。我想在用户运行程序后立即创建一个文本文件,并将其保存在Documents文件夹下。

现在,我将所有文本存储在一个String变量中,并在运行时将其写入一个文件中。但问题是,我不想在代码中对文本文件的所有内容进行硬编码。

有没有任何方法可以将文本文件嵌入到项目中,当用户运行应用程序时,将其提取并存储在特定路径下?

附言:我正在使用XCode。

谢谢。

只需将文件添加到项目中即可。在"生成阶段"中,添加一个新的"复制文件"生成阶段,然后选择"资源"文件夹。

在您的代码中使用NSBundle

在我的XCode(11.5)版本中,我添加到项目中的任何文本文件都会自动复制到应用程序包中的resources文件夹中。(我不需要做任何特殊的事情就可以将文件放入应用程序包中。)

然后,在运行时读取:

NSString* licensePath = [NSBundle.mainBundle.resourcePath stringByAppendingPathComponent:@"License.txt"];
NSString* license = [NSString stringWithContentsOfFile:licensePath encoding:NSUTF8StringEncoding error:nil];

相关内容

最新更新