无法打开d:drive中的文件

时间:2013-11-27 07:11:38

标签: c windows file-handling

如何读取和写入不在bin目录中的文件,该文件不在C盘中 我写了这段代码

fs=fopen("d:/source.txt","w");
if(fs==NULL)
{
      puts("Unable to open file");
}

输出“无法打开文件”。有人可以帮帮我。

2 个答案:

答案 0 :(得分:0)

FILE *fs= fopen("d:/source.txt","w");
if(fs==NULL)
{
  printf("can't open"); 
}
if (fs!=NULL)
{
    fputs ("Opened successfully",fs);
    fclose (fs);
}

确保source.txt文件存在且不是只读的。我试过上面的代码没有得到任何错误。

答案 1 :(得分:0)

有几种可能的原因导致无法通过fopen()打开文件。

要获取有关错误详情的信息,请打印errno和/或致电perror()和/或strerror(),例如:

#include <stdio.h>
#include <string.h>
#include <errno.h>

int main(void)
{
  char filename[] = "d:/source.txt";
  FILE * fs = fopen(filename,"w");
  if (NULL == fs)
  {
    perror("fopen() failed");
    fprintf(stderr, "Error #%d occurred when trying to open file '%s': %s.\n", 
      errno, 
      filename,
      strerror(errno));
  }

  ... 

  return 0;
}