用 Delphi 下載網絡文件

procedure TForm1.Button2Click(Sender: TObject);
var
  MyStream:TMemoryStream;
begin
  IdAntiFreeze1.OnlyWhenIdle:=False;//設置使程序有反應.
  MyStream:=TMemoryStream.Create;
  try
    //下載我站點的一個ZIP文件

    IdHTTP1.Get('http://www.138soft.com/download/Mp3ToExe.zip',MyStream); 
  except//INDY控件一般要使用這種try..except結構.
    Showmessage('網絡出錯!');
    MyStream.Free;
    Exit;
  end;
  MyStream.SaveToFile('c:/Mp3ToExe.zip');
  MyStream.Free;
  Showmessage('OK');
end;

procedure TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCountMax: Integer);
begin
  ProgressBar1.Max:=AWorkCountMax;
  ProgressBar1.Min:=0;
  ProgressBar1.Position:=0;
end;

IdHTTP1的Get還有一種形式就是獲取字符串:例如,上面的程序可以改寫成:
procedure TForm1.Button1Click(Sender: TObject);
var
  MyStr:String;
begin
  IdAntiFreeze1.OnlyWhenIdle:=False;//設置使程序有反應.
  try
    MyStr:=IdHTTP1.Get('http://www.138soft.com/default.htm');
  except
    Showmessage('網絡出錯!');
    Exit;
  end;
  Showmessage(MyStr);
end;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章