HTTP----读取文件长度时文件长度不正确(在线等)
我用
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文件
问题点数:50、回复次数:2Top
1 楼hejoin(hejoin)回复于 2004-04-05 18:06:11 得分 0
帮你顶,知道了告诉我一声,我也想知道Top
2 楼crescendo(小青——渴望逃跑)回复于 2004-04-06 14:13:21 得分 50
用那个会出问题,你可以去看一下MSDN的说明,可以用如下的方法:
CInternetSession session;
CInternetFile *file=NULL;
long cb=1;
file=(CInternetFile*)session.OpenURL(strURL);
if(file)
{
cb=file->SeekToEnd();//cb是文件的正确长度
file->SeekToBegin();
}
:)Top




