打开C中某些其他目录中的txt文件

时间:2015-01-08 15:51:20

标签: c file-io fopen

我想打开“../ab cd / Output”文件夹中的文件abc.txt。 到目前为止我所做的是:

char temp1[100], temp2[10] = "abc.txt";
strcpy(temp1, "../ab\ cd/Output/");
FILE *fp_minenergy = fopen(strcat(temp1, temp2), "r");

执行它会产生分段错误。

2 个答案:

答案 0 :(得分:1)

问题应该只是文件路径本身

fopen("../ab cd/Output/abc.txt", "r");

您的实际path无效" ../ ab \ cd /输出/ abc.txt",您不需要逃离这里。

答案 1 :(得分:0)

char dirname[51] = "/the/directory";
char filename[51] = "the_file_name.txt";
char full_name[101]  = strcat("/the/directory","/");
char full_name = strcat(full_name,filename);
FILE *fp_minenergy = fopen(full_name, "r");

我为/添加了一个额外的strcat,因为我不知道目录名的来源。有人可以在没有尾随/的情况下指定它。如果他们在名称中指定/,则不会受到伤害。

/ dir / one 等于 dir //两个

相关问题