[轉貼]寫入/讀出資料庫中的影像
發表於 : 2008年 11月 27日, 17:48
這是利用 TADOBlobStream 來進行存取的, 另外可以參考 binary 利用
TBLOBField 來存取的範例:
http://bbs.toseek.info/cgi-bin/topic.cg ... c=9&show=0
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;