Delphi使用Indy组件http上传文件


本文整理自网络,侵删。

 
该示例使用Indy组件演示如何使用http上传文件
主要代码
procedure TformMain.btnUploadClick(Sender: TObject);
var
  formData : TIdMultiPartFormDataStream;
  i: integer;
begin
  if (ListBox_Filelist.Items.Count = 0) then exit;
  
  formData := TIdMultiPartFormDataStream.Create;

  try
    for i := 0 to ListBox_FileList.Items.Count -1 do
    begin
      formData.AddFile('File'+IntToStr(i), ListBox_FileList.Items[i], 'plain/text');
    end;

    IdHTTP1.Request.Referer := Edit_URLAddress.Text;

    try
      memo_log.Lines.Text     := idHTTP1.Post(Edit_URLAddress.Text, formData);
    except
      on e: exception do
      begin
        memo_log.Lines.Text   := e.Message;
      end;
    end;
  finally
    formData.Free;
  end;
end;

procedure TformMain.btn_ClearMessagesClick(Sender: TObject);
begin
//删除所有行信息
  with memo_log.Lines do
  begin
    BeginUpdate;
    Clear;
    EndUpdate;
  end;
end;

procedure TformMain.btnRemoveFileClick(Sender: TObject);
begin
  // cn: 从filelist清除所选行的项目
  // en: To remove the selected itens from filelist
  if ListBox_Filelist.SelCount > 0 then
  ListBox_Filelist.DeleteSelected
  else
  showmessage('请先选定要删除的项目 / Please select the item(s) to delete');
end;

procedure TformMain.btnAddFileClick(Sender: TObject);
begin
  // cn: 从对话框中添加新文件到filelist
  // en: To add a new file at filelist from dialog box
  if (OpenDialog1.Execute) then ListBox_Filelist.Items.Add(OpenDialog1.FileName);
end;

procedure TformMain.Exit1Click(Sender: TObject);
begin
  Application.Terminate;
end;

来源:https://www.amingstudio.com/delphi/594.html

相关阅读 >>

Delphi 禁止窗口移动

Delphi tnethttpclient https忽略证书验证

Delphi firedac 获取mysql 数据库databases 列表

Delphi memo 文本列合并

Delphi tidhttp获取软件版本信息

Delphi 通过机器名读取ip地址的代码

Delphi程序在win7 win8 win10下自动请求以管理员身份运行

Delphi 阿里云发送短信的Delphi单元

Delphi 捕捉异常 try except语句 和 try finally语句用法以及区别

Delphi 创建多级目录

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



打赏

取消

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

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

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

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

评论

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