• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

用delphi批量导入某子目录下所有JPG图片文件到数据库_Delphi

Delphi 搞代码 3年前 (2018-08-09) 153次浏览 已收录 0个评论

//保存图片到数据库
function imagesavetosql(dataset:TQuery;filename:String):boolean;
var
  imagejpg:TJPEGImage; //jpg图片
  MyStm:TMemoryStream;
begin
  result:=false;
  MyStm:=TMemoryStream.Create;
  imagejpg:=Tjpegimage.Create;
  if filename<>” then

http://www.gaodaima.com/?p=66079用Delphi批量导入某子目录下所有JPG图片文件到数据库_Delphi

  begin
    imagejpg.LoadFromFile(filename);
    imagejpg.SaveToStream(MyStm);
    MyStm.Position:=0;
    TBlobField(dataset.FieldByName(‘pict’)).LoadFromStream(MyStm); //不可与DMImage之类控件,因为其只支持BMP
    result:=true;
  end;
  MyStm.Free;
  imagejpg.free;
end;
//界面上添加TDirectoryListBox,TGauge控件
procedure Tfrmpict.BitBtn2Click(Sender: TObject);
var
  dirlist:TStringList;
  i:Integer;
begin
  inherited;
  if chk_road.Checked  then
  begin
    dirlist:=TStringList.Create ;
    dirlist.Clear;
    try
      GetAllFileName(DirectoryListBox1.Directory,dirlist);
      if dirlist.Count>0 then
      begin
      Gauge1.MinValue :=0;
      Gauge1.MaxValue:= dirlist.Count-1;
      for i:=0 to dirlist.Count-1 do
      begin
       with dm.qry_pict do
       begin
         Insert;
         Fields[0].AsString:=copy(dirlist.Strings[i],1,pos(‘.’,dirlist.Strings[i])-1);
         if imagesavetosql(dm.qry_pict,dirlist.Strings[i] )=false then
         begin
         ShowMessage(‘导入’+dirlist.Strings[i]+’.jpg图片时出错’);
         Abort;
         end;
         Post;
       end;  //with
       Gauge1.AddProgress(1);
      end;  //for
      end  //if
      else
      ShowMessage(‘该目录下不存在JPG类型图片’);
      
    finally
      dirlist.Free;
    end;

  end
  else
     ShowMessage(‘请执行路径选取操作’);

  //Close;
end;

欢迎大家阅读《用delphi批量导入某子目录下所有JPG图片文件到数据库_Delphi》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址