无法在C中打开文件-在C中打开文件时出错

问题描述 投票:0回答:2

打开文件的主要功能位于“项目”目录中。然后,我有一个“ cmake-build-bug”目录(位于“ project”目录中),其中位于“ data.txt”文件中。我想阅读它,但是由于某种原因,它一直在写Error to open file。我从不了解如何将正确的路径写入文件。还是存在另一个导致错误的问题?

  FILE *file[2] ;
  char *fileName2 = "data.txt";
    file[1] = fopen(fileName2, "r");
    if (file[1] == NULL){
        printf("Error to open file\n");
    }
        printf("Reading..\n");
  fclose(file[1]);
c file readfile
2个回答
0
投票

[使用IDE时(并且由于您具有cmake-build-debug目录,所以我想您正在使用CLion IDE),所以默认的工作目录很少是预期的。对于CLion来说,似乎它不是当前存储data.txt文件的位置。 (我不记得CLion的默认设置。)

假设CLion,您需要为程序编辑“运行/调试配置”(菜单“运行”和项目“编辑配置”,并将“工作目录”设置为具有data.txt文件的位置。] >


0
投票

根据http://man7.org/linux/man-pages/man3/fopen.3.html,第一个参数是路径名,而不是很多人认为的文件名。假设c:\ your_ project \ cmake-build-bug \ data.txt是路径名,只记得\是转义字符,所以我相信您可以尝试char *fileName2 = "c:\\your_ project\\cmake-build-bug\\data.txt"

© www.soinside.com 2019 - 2024. All rights reserved.