- 论坛徽章:
- 0
|
fp = fopen(filename,"rb");
if(fp==NULL)
{
TRACE("can not open file\n");
return FALSE;
}
datasrc = new unsigned char[511];
datades = new unsigned char[1024];
//length为已知的filename文件长度
len = length;
while(!feof(fp))
{
if(len>=510)
{
fread(datasrc,510,1,fp);
datasrc[510]='\0';
len -= 510;
}
else if(len>0)
{
fread(datasrc,len,1,fp);
datasrc[len]='\0';
len = 0;
}
else
break;
Base64_Code((unsigned char *)datasrc,(unsigned char *)datades); //编码转换
rt = send(s,(char *)datades,strlen((char *)datades),0);
} |
为什么上面那段代码传递2-3K小文件时候正常 , 传递大点的文件就不正常,
比较稳定的传输文件代码该怎么来写, |
|