我使用IDHttp下载某个文件,
该控件有个OnWork事件,
每次接收到数据时就会触发这个事件,
我想每次当IdHttp控件收到数据时取得此时收到的数据,
比如说这次IdHttp收到1000字节数据,
我就想获得这个数据,然后把它保存在文件里,
下次IDhttp又收到500字节数据,我又想取得这个数据,
然后作自己的处理。
每次都要获得数据的副本,
请问应该如何做?
我看它的源代码看了n长时间也没解决。

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var TempHtmlFile: String;
    begin
      TempHtmlFile := ExtractFilePath (Application.ExeName) + 'temp1.html';
      Memo1.Lines.Text := IdHTTP.Get( EditURL.Text );
      Memo1.Lines.SaveToFile( TempHtmlFile );
    end;
    (例:EditURL.Text := 'http://expert.csdn.net/Expert/topic/2946/2946780.xml?temp=.884762')注:是下载全部、仅供参考。
      

  2.   

    to Delphityro(卖血打星际) :
    事件的参数是不带数据的,所以我就摸不着头脑了。
    to  ailibuli(愛理不理):
    非常感谢,你举的例子我知道怎么做。
    我现在要下载的是一个非常大的文件,比如说某个rar文件,
    其大小不是一个htm文件可以比的。我知道可以给一个流为参数,
    然后文件就保存在那个流里面。但是由于我要多线程下载,所以
    我必须自己处理那些数据。
      

  3.   

    http://www.marcocantu.com/code/md6htm/WebFind.htm
      

  4.   

    3x to  aiirii(ari-爱的眼睛) ,
    您说的那个地址找不到这个问题的答案啊。