永发信息网

ccs中,用fopen打开文件,再用fread读取,读进来的数据是错的,每次都一样,这是为什么

答案:4  悬赏:30  手机版
解决时间 2021-04-04 03:28
  • 提问者网友:谁的错
  • 2021-04-03 06:43
ccs中,用fopen打开文件,再用fread读取,读进来的数据是错的,每次都一样,这是为什么
最佳答案
  • 五星知识达人网友:躲不过心动
  • 2021-04-03 07:53
程序:

路径识别问题
D:\3.txt代码识别会错
应该用
D:\\3.txt就对了

你如果有一个判断BinFile是不是为NULL的习惯就会发现文件根本没有打开

正确代码如下:
FILE *BinFile ;
char *buf[4000];
BinFile=fopen("D:\\3.txt","rb");
if(BinFile==NULL)
{
ShowMessage("Not Open");
retrun;
}
fread(buf,1,4000,BinFile);
fclose(BinFile);
全部回答
  • 1楼网友:轻雾山林
  • 2021-04-03 11:17
路过,看到解答这么多内容,再加这么多评论,可见解答者真的很用心,很热心啊,楼主该采纳了。
  • 2楼网友:雪起风沙痕
  • 2021-04-03 10:02
BinFile=fopen("D:\3.txt","rb");
改成
BinFile=fopen("D:\\3.txt","rb");试试........追问没有用啊~~~加了if判断语句,说明文件已经被打开了~~但是buf里面的数据是错的~好像还是固定的~~不知道哪来的乱七八糟的数据~~能帮我再想想原因么
  • 3楼网友:爱难随人意
  • 2021-04-03 08:25
我和你遇到相同的问题,从fread返回的读取到的字节数也是随机的,可能是ccs 文件读取缓冲区的问题
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯