首页 热点专区 义务教育 高等教育 出国留学 考研考公

fopen文件路径问题

发布网友

我来回答

2个回答

热心网友

作为输入文件打开,打开成功,表明文件已经存在,你当然知道文件在何处,若不存在,返回NULL。
作为输出文件打开,文件不存在会建一个新文件。
'/' 在我的PC不能用作路径中的斜杠。我们可以用 system() 调 DIR 来检查 文件名是否 合法:
#include <stdio.h>
#include <stdlib.h>
main(){
char s[6][50]={"g:a/a.txt" ,"g:/a/a.txt" ,"g:\a\a.txt" ,"g:\\a\\a.txt",
"g:a\a.txt" , "g:a/////////a.txt"};
int i;
char cmd[80];
for (i=0;i<6;i++){
sprintf(cmd,"DIR %s",s[i]);
printf("i=%d cmd=%s\n",i, cmd);
system(cmd);
}
}

你可以在DOS窗,G:\ 盘根目录处 打命令:
dir a.txt /s /b
它会列出所有文件夹和子文件夹中 a.txt 文件名 的全路径。
你可以查一下,是否如你所料,你列的全部文件 真的可以打开和已经建立。追问用system()测的只有"g:\\a\\a.txt"对
知道规范的就算了

热心网友

如果打不开,就新建一个追问事实是都打开了

追答斜杠是不能用作文件名的字符

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com