(adodataset1.FieldByName('picture') as tblobfield).LoadFromFile('c:\picture.bmp');
可以采用流处理。数据库中的字段为BLOB类型,Access中为ole类型。procedure procedure TForm1.Button1Click(Sender: TObject); var bs:TBlobStream; begin Table1.open; Table1.edit; bs:=TBlobStream.Create(图像字段,bmReadWrite); 图像.SaveToStream(bs); Table1.Append; 图像字段.LoadFromStream(bs); Table1.Post; bs.Free; end;procedure TForm1.Button2Click(Sender: TObject); begin if not 图像字段.IsNull then begin 图像字段.SaveToFile('tmp'); 图像显示控件.LoadFromFile('tmp'); end; end;
try try m_jpegStream:=TMemoryStream.Create; (aqurProduct.FieldByName('BSPPicture1') as TBlobField).SaveToStream(m_JpegStream); m_JpegStream.Position:=0; try image1.Picture.Graphic:=nil; image1.Picture.Graphic:=TJpegImage.Create; image1.Picture.Graphic.LoadFromStream(m_JpegStream); //读Jpeg except Image1.Picture.Bitmap.LoadFromStream(m_JpegStream); //读Bmp end; except end; finally m_JpegStream.Free; end;strFieldName:=fmDM.OpenPictureDialog1.FileName;//保存 if FileExists(strFieldName) then (aqurProduct.FieldByName('BSPPicture1') as TBlobField).LoadFromFile(strFieldName); Image1.Picture.LoadFromFile(strFieldName);
procedure TForm1.Button1Click(Sender: TObject);
var
bs:TBlobStream;
begin
Table1.open;
Table1.edit;
bs:=TBlobStream.Create(图像字段,bmReadWrite);
图像.SaveToStream(bs);
Table1.Append;
图像字段.LoadFromStream(bs);
Table1.Post;
bs.Free;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
if not 图像字段.IsNull then begin
图像字段.SaveToFile('tmp');
图像显示控件.LoadFromFile('tmp');
end;
end;
try
m_jpegStream:=TMemoryStream.Create;
(aqurProduct.FieldByName('BSPPicture1') as TBlobField).SaveToStream(m_JpegStream);
m_JpegStream.Position:=0;
try
image1.Picture.Graphic:=nil;
image1.Picture.Graphic:=TJpegImage.Create;
image1.Picture.Graphic.LoadFromStream(m_JpegStream); //读Jpeg
except
Image1.Picture.Bitmap.LoadFromStream(m_JpegStream); //读Bmp
end;
except
end;
finally
m_JpegStream.Free;
end;strFieldName:=fmDM.OpenPictureDialog1.FileName;//保存
if FileExists(strFieldName) then
(aqurProduct.FieldByName('BSPPicture1') as TBlobField).LoadFromFile(strFieldName);
Image1.Picture.LoadFromFile(strFieldName);