HTTP----读取文件长度时文件长度不正确(在线等)

abcpanpeng 2004-04-04 04:43:39
我用
CHttpFile->Getlength();
读文件时得出的结果与实际文件大小不符,结果总比实际文件小好多。

如果用以下代码读取文件时,所得文件的大小也比实际大小小好多,为什么?
请高手指教,谢谢。

int flag=1;
DWORD length=1024;
while(flag)
{
length=pFile->Read (buffer,length);
file.Write (buffer,length);
if(length<1024)
flag=0;
}
flie是CFile类型
pFile是CHttpFile类型

CInternetSession m_session();
pServer=m_session.GetHttpConnection (strServerName,nPort);
pFile=pServer->OpenRequest (CHttpConnection::HTTP_VERB_GET,strobject,NULL,1,NULL,
NULL,INTERNET_FLAG_RELOAD);
pFile->AddRequestHeaders (strobject);
pFile->SendRequest ();
打开pFile文件
...全文
102 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
crescendo 2004-04-06
  • 打赏
  • 举报
回复
用那个会出问题,你可以去看一下MSDN的说明,可以用如下的方法:
CInternetSession session;
CInternetFile *file=NULL;
long cb=1;
file=(CInternetFile*)session.OpenURL(strURL);
if(file)
{
cb=file->SeekToEnd();//cb是文件的正确长度
file->SeekToBegin();
}

:)
hejoin 2004-04-05
  • 打赏
  • 举报
回复
帮你顶,知道了告诉我一声,我也想知道

18,357

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧