Delphi 批量把图片保存到Access数据库

//添加一个memo,添加opendialog
procedure TfrmMain.Button6Click(Sender: TObject);
var tuid:Integer;
begin
  if opendialog2.Execute then
   for tuid:=0 to opendialog2.Files.count-1 do
begin
  tupath4:=opendialog2.files.strings[tuid];
  Memo2.Lines.Add(tupath4);
  end;
end;

//从memo上读取路径再写入数据库
procedure TfrmMain.Button5Click(Sender: TObject);
var
  ext: string;
  tuid: Integer;
  ms:Tmemorystream;
begin
  if Memo2.Lines <> nil then
  begin

    for tuid := 0 to Memo2.Lines.count - 1 do
    begin
      cximage4.Picture.LoadFromFile(Memo2.Lines.strings[tuid]);
      if cximage4.picture.Graphic <> nil then  //避免cximage1中无图像保存出错
      begin
        DmMain.adoquery1.Append;;
        DmMain.adoquery1.FieldByName('图片').Assign(cximage4.Picture.Graphic);
         DmMain.ADOQuery1.FieldByName('图片路径').Value :=Memo2.Lines.strings[tuid];
        ext := extractfileext(Memo2.Lines.strings[tuid]);  //获取扩展名
        if uppercase(ext) = '.BMP' then
          DmMain.adoquery1.FieldByName('格式').VALUE := 'bmp'
        else if (UPPERCASE(ext) = '.JPEG') or (UPPERCASE(ext) = '.JPG') then
          DmMain.adoquery1.FieldByName('格式').VALUE := 'jpg';
      end;
      DmMain.adoquery1.Post;
    end;

  end;

end;

猜你喜欢

转载自blog.csdn.net/qq_33536143/article/details/85757042
今日推荐