Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我在哪里设置Xcode IDE属性来读取数据文件以避免没有这样的文件或目录_Xcode_File_Ide_Location - Fatal编程技术网

我在哪里设置Xcode IDE属性来读取数据文件以避免没有这样的文件或目录

我在哪里设置Xcode IDE属性来读取数据文件以避免没有这样的文件或目录,xcode,file,ide,location,Xcode,File,Ide,Location,这不是一个代码问题,而是一个Xcode IDE问题。 对于那些以代码分析为荣的人来说,这很好,但是在这种情况下,请尽量关注上面标题中的问题,而不是代码 在Xcode IDE中,我创建了一个新项目,并选择了一个“命令行工具”来创建ReadAFile。 然后我在main.c中输入了一些简单的代码来读取和显示“Data.txt”的内容。 然后我选择了File、New、File和Empty(对于空文档),并将其命名为Data.txt,然后键入一个句子,然后保存文件。 在Xcode中,当我选择Produc

这不是一个代码问题,而是一个Xcode IDE问题。 对于那些以代码分析为荣的人来说,这很好,但是在这种情况下,请尽量关注上面标题中的问题,而不是代码

在Xcode IDE中,我创建了一个新项目,并选择了一个“命令行工具”来创建ReadAFile。 然后我在main.c中输入了一些简单的代码来读取和显示“Data.txt”的内容。 然后我选择了File、New、File和Empty(对于空文档),并将其命名为Data.txt,然后键入一个句子,然后保存文件。 在Xcode中,当我选择Product,Run时,会出现以下错误:

Error while opening the file.
: No such file or directory
Program ended with exit code: 1
我应该在哪里设置Xcode IDE属性,以便它知道我的数据文件在哪里,以避免出现“没有这样的文件或目录”错误

当我在ReadAFile.c中输入相同的代码,并使用vim在终端提示符处键入相同的文件“Data.txt”,保存它,然后运行make ReadAFile时,代码正确执行

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char * argv[]) {
    char ch, file_name[25];
    FILE *fp;
    strcpy(file_name,"Data.txt");
    fp = fopen(file_name,"r");
    if( fp == NULL ) {
        perror("Error while opening the file.\n");
        exit(EXIT_FAILURE);
    }
    printf("The contents of %s file are :\n", file_name);
    while( ( ch = fgetc(fp) ) != EOF )
        printf("%c",ch);
    fclose(fp);
    return 0;
}
#包括
#包括
#包括
int main(int argc,const char*argv[]{
char ch,文件名[25];
文件*fp;
strcpy(文件名,“Data.txt”);
fp=fopen(文件名,“r”);
如果(fp==NULL){
perror(“打开文件时出错。\n”);
退出(退出失败);
}
printf(“文件%s的内容是:\n”,文件名);
而((ch=fgetc(fp))!=EOF)
printf(“%c”,ch);
fclose(fp);
返回0;
}

这是个好问题。。。我有一个临时的、变通的、回答……
我尊重您的要求,将重点放在问题上,而不是代码上。
作为一个快速的临时答案,我现在唯一能给你的答案是修改你的代码,如果你只是调试你的代码和你的数据文件我知道硬编码您的文件位置是不允许的,但出于调试目的以下内容将帮助您克服道路上的颠簸。您可以尝试将目录位置与数据文件一起硬编码,以便代码可以找到它。例如,假设Mac上的用户目录是jerryletter,您可以将Data.txt文件复制到用户目录~/jerryletter。然后可以只修改一行代码,如下所示:

"strcpy(file_name,"/Users/jerryletter/Data.txt");"

DougPan.com

解决方案:在Xcode中,向下查看左侧栏中名为“Products”的文件夹图标。在它下面,您将找到可执行文件的名称。单击一次,然后查看右侧栏并单击“文件检查器”图标。在那里,您将找到执行文件的目录。您只需单击目录后面的箭头,将数据文件放在其中,它就会找到它。这允许您将文件放置在相对位置,而不是我前面提到的固定的硬编码方法。