“隐士” 发表于 2017-4-26 18:47:40

c语言文件问题

为什么我不能读取文件?


int main(void)
{
        FILE *fp;
        if ((fp = fopen("hello.txt", "rb"))==NULL)
                printf("不能打开此文件\n");
        else
                printf("打开成功");

        getchar();
}

人造人 发表于 2017-4-26 19:05:38

你把 hello.txt 放在哪了

Caleb 发表于 2017-4-26 19:13:25

“hello.txt"不是二进制文件,不应该加b,后面直接是"r"

“隐士” 发表于 2017-4-26 19:13:57

放在桌面的   在C:\Users\Yangyang0412\Desktop   里面

“隐士” 发表于 2017-4-26 19:14:57

if ((fp = fopen("C:\\Users\\Yangyang0412\\Desktop\\hello.txt", "rb"))==NULL)   

写成这样也 还是不行

“隐士” 发表于 2017-4-26 19:34:37

Caleb 发表于 2017-4-26 19:13
“hello.txt"不是二进制文件,不应该加b,后面直接是"r"

还是不行

GSMNC 发表于 2017-4-26 21:16:20

楼主,我最近也在学文件读写,你试下这个
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
      FILE *fp;
      if ((fp = fopen("hello.txt", "rb"))==NULL)
      {
            printf("不能打开此文件\n");
            exit(0);
      }
      else
      {
            printf("打开成功\n");
      }


      while(!feof(fp))
      {
            putchar(getc(fp));
      }
      return 0;
}

小佛珠 发表于 2017-4-26 21:35:40

失败原因:文件路径不明......不指明文件路径时,默认在执行目录读取文件

“隐士” 发表于 2017-4-27 10:43:25

GSMNC 发表于 2017-4-26 21:16
楼主,我最近也在学文件读写,你试下这个

还是不行

“隐士” 发表于 2017-4-27 10:45:01

小佛珠 发表于 2017-4-26 21:35
失败原因:文件路径不明......不指明文件路径时,默认在执行目录读取文件

fp = fopen("C:\\Users\\Yangyang0412\\Desktop\\hello.txt", "r"

我把它改成这样也不行

对了我系统只要一个C盘 没有其他盘      我装的是双系统    会不会是这个问题

寒月独狼 发表于 2017-4-27 11:55:00

本帖最后由 寒月独狼 于 2017-4-27 12:00 编辑

楼楼啊,我把你的代码运行一下是这样子的

Krant5 发表于 2017-4-27 14:06:50

你不要写小程序就用这么大的软件嘛 ,你要找到项目当前工作目录把hello.txt放进去,然后那个打开模式我觉得应该不会影响他打开文件。主要是当前工作目录!!!
页: [1]
查看完整版本: c语言文件问题