1 頁 (共 1 頁)

[轉貼]寫入/讀出資料庫中的影像

發表於 : 2008年 11月 27日, 17:48
tim
這是利用 TADOBlobStream 來進行存取的, 另外可以參考 binary 利用
TBLOBField 來存取的範例:
http://bbs.toseek.info/cgi-bin/topic.cg ... c=9&show=0

代碼: 選擇全部

     
    uses jpeg; 
    ... 
     
    procedure Tform1.btnShowImageClick(Sender: TObject); 
    var 
      bS : TADOBlobStream; 
      Pic : TJpegImage; 
    begin 
      bS := TADOBlobStream.Create(AdoTable1Picture, bmRead); 
      // AdoTable1Picture為欄位名稱。 
      try 
        Pic:=TJpegImage.Create; 
        try 
          Pic.LoadFromStream(bS); 
          ADOImage.Picture.Graphic:=Pic; 
        finally 
          Pic.Free; 
        end; 
      finally 
        bS.Free; 
      end; 
    end; 
    procedure SaveJpegToTable(Table: TADOTable; PicField:TBlobField; sPicPath: string); 
    {Usage:  SPicFileName := 'C:!gajbacdcoverscdcover1.jpg'; 
      SaveJpegToTable(ADOTable1, ADOTable1Picture, SPicFileName); 
    } 
    var 
      fS  : TFileStream; 
    begin 
      fs:=TFileStream.Create(sPicPath, fmOpenRead); 
      try 
        Table.Edit; 
        PicField.LoadFromStream(fs); 
        Table.Post; 
      finally 
        fs.Free; 
      end; 
    end;