打开文件时出错

时间:2012-10-07 16:21:48

标签: c file directory fopen

解决。问题 -

讲师上传了一个名为file.txt的文本文件,这导致文件“file.txt.txt”......我现在感到沮丧和愚蠢。


原始问题

我在使用Windows 7上的Visual Studio 2012尝试使用fopen打开文本文件时遇到问题。我不太确定这个file.txt应该在哪个目录中,所以我尝试将它放在.vcxproj文件和.exe文件中,该文件位于VS创建的Debug目录中。

没有成功,我尝试在fopen函数中包含文件的完整路径。

这段代码编译得很好,但是当我运行它时,我收到一条错误,上面写着“没有这样的文件或目录”

我做错了什么,我该如何解决?我真的很困惑,欢迎任何帮助!提前谢谢。

以下代码:

int main(void)
{

    FILE *fp;

    fp = fopen("C:\\Directory\\file.txt", "r"); 

    if (fp == NULL)
    {
        perror("Error opening file\n");
    }

return 0;
}

2 个答案:

答案 0 :(得分:1)

您应该为fopen()添加正确的标头,即

#include <stdio.h>

确保所有反斜杠都在文件名中真正转义(加倍)。

答案 1 :(得分:1)

你真的在这个地方有任何文件“C:\ Directory \ file.txt”我猜你没有。

我尝试了代码,它对我运行非常好。最初我得到了同样的错误,那是因为文件不存在。一旦我把文件放在那里,它就像预期的那样完美地工作。

请再次检查文件是否已就位。