delphi 实现文件上传下载


本文整理自网络,侵删。

 delphi 实现文件上传下载 
unit UpDownFile;

interface

uses
Windows, Classes, Idhttp, URLMon, IdMultipartFormData;

const UpUrl = 'http://127.0.0.1/upfile/upfile.asp';
const UpFileName = 'C:\Documents and Settings\Administrator\桌面\test\web.mdb';
const DownUrl = 'http://www.google.com/images/logo_sm.gif';
const DownFileName = 'web.gif';

type
TUpDownFile = class
private
FThreadID : DWord;
FHandle : THandle;
{ Private declarations }
public
constructor Create;
procedure UpFile;
procedure DownFile;
procedure Close;
end;

implementation

function UpFileEx(): string; stdcall;
var
MutPartForm: TIdMultiPartFormDataStream;
response: string;
FHttp: Tidhttp;
begin
FHttp := Tidhttp.Create(nil);
FHttp.HandleRedirects := true;
FHttp.AllowCookies := true;

MutPartForm := TIdMultiPartFormDataStream.Create;
MutPartForm.AddFormField('act', 'upload');
MutPartForm.AddFormField('upcount', '1');
MutPartForm.AddFormField('filepath', 'data');
MutPartForm.AddFormField('file1', 'filename="' + UpFileName + '"');
MutPartForm.AddFormField('Submit', 'Submit');
MutPartForm.AddFile('file1', UpFileName, 'text/plain');
try
response := FHttp.Post(UpUrl, MutPartForm);
//Messagebox(0, PAnsiChar(response), 'ca', MB_OK);
finally
MutPartForm.Free;
FHttp.Free;
end;
end;

function DownFileEx(): string; stdcall;
begin
UrlDownloadToFile(nil, PChar(DownUrl), PChar(DownFileName), 0, nil);
end;

constructor TUpDownFile.Create;
begin
//
end;

procedure TUpDownFile.UpFile;
begin
//FHandle := CreateThread(nil,0,@UpFileEx,nil,0,FThreadID);
UpFileEx;
end;

procedure TUpDownFile.DownFile;
begin
// FHandle := CreateThread(nil,0,@DownFileEx,nil,0,FThreadID);
DownFileEx;
end;

procedure TUpDownFile.Close;
begin
//ExitThread(FThreadID);
end;

end.

相关阅读 >>

Delphi 文件夹重命名

Delphi跨平台tcp库的封装

Delphi编程防止界面卡死的方法

Delphi 利用http的post方法做个在线翻译的小工

Delphi 如何确定access数据库中存在某一个已知名的表

Delphi 试试带参数的 exit

Delphi 执行一个外部程序,当外部程序结束后言主程序立即响应

Delphi图像hash算法,关于图像相似度问题

Delphi中窗体的方法

Delphi 怎样判断spinedit在微调时值是增加还是减少了

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...