gpt4 book ai didi

iphone - 如何访问项目中的本地文件

转载 作者:IT王子 更新时间:2023-10-29 07:57:36 24 4
gpt4 key购买 nike

我想将一些静态文件(图像、二进制文件等)添加到我的应用程序中。我已将它们放在名为 Resources 的文件夹下,并将其添加到我的 XCode 项目中。

接下来,我将这些文件添加到项目设置中 Build Phases 选项卡中的 Copy Bundle Resources

但是,我似乎无法以正确的方式引用它们。

例如读取一个二进制文件:

NSInputStream *is = [[NSInputStream alloc] initWithFileAtPath:@"data.bin"];
if(![is hasBytesAvailable]) NSLog(@"wrong");

这总是失败并打印出 wrong

我用 NSData initWithContentsOfFile: 尝试了类似的方法,但这甚至不会执行。另一种尝试是使用 [NSBundle mainBundle] 但这也没有完全执行。

我是 iOS 新手,请帮助我访问我的本地文件!任何帮助将不胜感激。

谢谢,

最佳答案

您需要确保在正确的位置访问文件。 Xcode 将您的资源文件放在应用程序的“应用程序包”中的 Resources 目录中。有很多方法可以挖掘出来。

一种常见的方法是获取包中文件的路径名:

NSBundle *mainBundle = [NSBundle mainBundle];
NSString *myFile = [mainBundle pathForResource: @"data" ofType: @"bin"];

如果您的 bundle 中的非标准位置有其他文件,pathForResource 可以让您指定目录名称。

如果您想查看模拟器正在使用的硬盘驱动器上的实际位置以便检查它,您可以说:

NSLog(@"Main bundle path: %@", mainBundle);
NSLog(@"myFile path: %@", myFile);

在 Xcode 文档库中搜索“Bundle Programming Guide”开始。 :-)

关于iphone - 如何访问项目中的本地文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7776536/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com