为什么fread读取文件是读取大部分还有一小部分没读取,怎么回事?

  1. 图片说明
  2. 图片说明

    求大神帮助。

size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;
实际读取的长度是 size*count,看看你的url长度是多少?

size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;
实际读取的长度是 size*count,看看你的url长度是多少?

一般的做法是用EOF判断是否读到文件结尾。

首先你存放字符的缓冲区必须的足够的大。否则缓冲区放不下你又怎么能够读得完呢?

FILE *file=fopen("F:\IP地址.txt","r");
if(!file)
{
cerr<<"error!"<<endl;
}

char buf[50000];
memset(buf,0x00,sizeof(buf));

fread(buf, sizeof(buf),1, file);
cout<<buf<<endl;

FILE *file=fopen("F:\IP地址.txt","r");
if(!file)
{
cerr<<"error!"<<endl;
}

char buf[50000];
memset(buf,0x00,sizeof(buf));

fread(buf, sizeof(buf),1, file);
cout<<buf<<endl;