Delphi10.2 关于Http 下载
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Delphi10.2 关于Http 下载,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2066字,纯文字阅读大概需要3分钟。
内容图文
演示如图:
代码如下:
1 unit Unit1; 2 3 interface 4 5 uses 6 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 7 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, IdComponent, Vcl.ComCtrls, Vcl.StdCtrls, 8 IdAntiFreezeBase, IdAntiFreeze, IdBaseComponent, IdTCPConnection, IdTCPClient, 9 IdHTTP; 10 11 type 12 TForm1 = class(TForm) 13 Label1: TLabel; 14 Label2: TLabel; 15 Edit1: TEdit; 16 Edit2: TEdit; 17 IdHTTP1: TIdHTTP; 18 IdAntiFreeze1: TIdAntiFreeze; 19 Button1: TButton; 20 ProgressBar1: TProgressBar; 21 Label3: TLabel; 22 Label4: TLabel; 23 Label5: TLabel; 24 Label6: TLabel; 25procedure IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode; 26 AWorkCountMax: Int64); 27procedure IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode; 28 AWorkCount: Int64); 29procedure Button1Click(Sender: TObject); 30private31{ Private declarations }32public33{ Public declarations }34end; 3536var37 Form1: TForm1; 3839implementation4041{$R *.dfm}42//1. 字节数转换为KB或MB字符串43function BytesToStr(iBytes: Integer): String; 44var45 iKb: Integer; 46begin47 iKb := Round(iBytes / 1024); 48if iKb > 1000then49 Result := Format(‘%.2f MB‘, [iKb / 1024]) 50else51 Result := Format(‘%d KB‘, [iKb]); 52end; 5354procedure TForm1.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode; 55 AWorkCountMax: Int64); 56begin57 ProgressBar1.Max := AWorkCountMax; // 获取要下载的文件大小58 Label2.Caption := BytesToStr(AWorkCountMax); 59 Update; 60end; 6162procedure TForm1.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode; 63 AWorkCount: Int64); 64begin65 Label1.Caption := BytesToStr(aWorkCount); //更新进度66 ProgressBar1.Position := aWorkCount; //更新进度条67 Update; 68end; 697071procedure TForm1.Button1Click(Sender: TObject); 7273var74 tStream: TMemoryStream; 75begin76 tStream := TMemoryStream.Create; 77try78 IdHTTP1.Get(Edit1.Text, tStream); //保存到内存流 (下载链接)79 tStream.SaveToFile(Edit2.Text); //保存为文件 (路径)80 ShowMessage(‘下载成功!‘); 81except82 ShowMessage(‘下载失败!‘); 83end; 84 tStream.Free; 8586end; 878889end.
原文:http://www.cnblogs.com/zty123/p/7058115.html
内容总结
以上是互联网集市为您收集整理的Delphi10.2 关于Http 下载全部内容,希望文章能够帮你解决Delphi10.2 关于Http 下载所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。