| procedureTForm1.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; procedureTForm1.IdHTTP1WorkBegin(Sender:TObject;AWorkMode:TWorkMode; constAWorkCountMax:Integer); begin ProgressBar1.Max:=AWorkCountMax; ProgressBar1.Min:=0; ProgressBar1.Position:=0; end; |
IdHTTP1的Get还有一种形式就是获取字符串:例如,上面的程序可以改写成:
| procedureTForm1.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; |
本文介绍了一个使用Delphi的Indy组件进行网络文件下载的例子。通过IdHTTP组件实现从远程服务器下载ZIP文件到本地,并展示了如何使用进度条显示下载进度。此外,还提供了另一种方法来获取并显示网页的内容。
1089

被折叠的 条评论
为什么被折叠?



