1

解决。问题 -

讲师上传了一个名为 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;
}
4

2 回答 2

1

您应该包含正确的标题fopen(),即

#include <stdio.h>

确保文件名中的所有反斜杠也确实被转义(加倍)。

于 2012-10-07T16:25:27.383 回答
1

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

我尝试了代码,它对我来说运行得很好。最初我遇到了同样的错误,那是因为文件不存在。一旦我把文件放在那里,一切都按预期完美运行。

请再次检查文件是否存在。

于 2012-10-07T16:27:46.527 回答