使用的fopen时NULL和Xcode(NULL when using fopen with xco

2019-10-19 23:56发布

我试图从初始化使用文件多维数组C的iPhone 4英寸的应用程序,但使用我不能打开文件fopen 。 每当我试试这个,我得到一个NULL

FILE  *f;
f=fopen("/level1.rez", "r");

if (f == NULL)
{
    printf("Error Reading File\n");
    //exit (0);
}

我不知道如何使用打开文件C

我想这已经:

我打印出来使用当前的工作目录getcwd但我得到的是“/”,当我连接,为文件名我还有NULL

我读了,如果你去product > scheme > edit scheme ,然后选项,你可以改变当前的工作目录,但我没有看到该选项。

此外,我读了你可以像使用绝对路径: /users/name/desktop/program ,但我相信新的iOS开发,所以我不知道这是否是一个好主意。

所以,我如何才能fopen工作?

Answer 1:

您可以指定在iOS的绝对路径,但在你的例子路径在Mac OS中,这是异地布置一点可能是使用。 您可以指定路径给fopen()如你所说,但还有更多的工作,以找出什么路径的第一部分确实是。

iOS的将所有的AppStore的应用程序与随机生成的sandbox目录名称的文件夹。 它基本上是一个GUID的十六进制字符串。 所以,你需要使用从iOS的框架的方法来获取路径(或URL)到文件的第一部分。

如果该文件是应用程序包,因此它可以与应用程序附带的一部分,那么你将需要使用一个NSBundle的方法来找到文件路径。

如果生成或应用的设备上启动后,下载的文件,那么你需要使用的NSFileManager方法来确定该文件的目录的路径。 (通常,文件目录,你可以建立自己的选择,在沙箱中的目录结构。)



文章来源: NULL when using fopen with xcode
标签: ios fopen