为什么我这段代码无法打开文件?
- C/C++ code
if ((fp1 = fopen("F:\\in1.txt", "rb")) == NULL || (fp2 = fopen("F:\\out1.txt", "wb")) == NULL){ printf("Error!\n"); exit(0); }[解决办法]
检查一下该路径下文件有没有。
[解决办法]
没有带上创建文件选项,如果文件不存在,自然就报错了。
[解决办法]
[解决办法]
(fp1 = fopen("F:\\in1.txt", "rb")) == NULL
rb参数读二进制,文件是必须要存在,你没有自然返回NULL进入if内部
[解决办法]
要是你想从文件里读取数据,这个文件肯定得存在啊。写的话,可以用"w"或"a",若文件不存在就会自动创建
[解决办法]
fopen不仅在文件不存在的时候会失败,还可能在另一个进程fopen后没fclose之前失败。
[解决办法]
- C/C++ code
if ((fp1 = fopen("F:\\in1.txt", "rb")) == NULL || (fp2 = fopen("F:\\out1.txt", "wb")) == NULL){ printf("Error!\n"); exit(0); }