//保存: T BlobField(adoTable1.FieldByName('图1')).LoadFromFile(filename1);//读出: procedure TForm1.SpeedButton5Click(Sender: TObject); var m_jpegstream:tmemorystream; str:string; begin str:=combobox1.Text; with adoQuery1 do begin close; sql.clear; sql.Add('select * from 表 where id='''+edit4.text+''''); try Open; except exit; end; end; if (adoQuery1.FieldByName(str) as tblobfield).asstring='' then exit else begin try try m_jpegStream:=TMemoryStream.Create; (adoQuery1.fieldbyname(str) as TBlobField).SaveToStream(m_JpegStream); m_JpegStream.Position:=0; try image4.Picture.Graphic:=nil; image4.Picture.Graphic:=TJpegImage.Create; image4.Picture.Graphic.LoadFromStream(m_JpegStream); //读Jpeg except Image4.Picture.Bitmap.LoadFromStream(m_JpegStream); //读Bmp end; except end; finally m_JpegStream.Free; adoQuery1.Close; end; end;其实我也是在这儿搜来整理的,建议你多多使用搜索,好吗?
我的解决方法 var Image1:TImage; begin Image1.Pictruer.LoadFromFile('pic'); TableImage.Assign(Image1.Pictuere); Table.post; end;如果你的水平不是很高,一定不要是用内存流,使用文件流一可以!内存六的出错率特别高,而且不容易调试!
BlobField(adoTable1.FieldByName('图1')).LoadFromFile(filename1);//读出:
procedure TForm1.SpeedButton5Click(Sender: TObject);
var
m_jpegstream:tmemorystream;
str:string;
begin
str:=combobox1.Text;
with adoQuery1 do
begin
close;
sql.clear;
sql.Add('select * from 表 where id='''+edit4.text+'''');
try
Open;
except
exit;
end;
end;
if (adoQuery1.FieldByName(str) as tblobfield).asstring='' then
exit
else
begin
try
try
m_jpegStream:=TMemoryStream.Create;
(adoQuery1.fieldbyname(str) as TBlobField).SaveToStream(m_JpegStream);
m_JpegStream.Position:=0;
try
image4.Picture.Graphic:=nil;
image4.Picture.Graphic:=TJpegImage.Create;
image4.Picture.Graphic.LoadFromStream(m_JpegStream); //读Jpeg
except
Image4.Picture.Bitmap.LoadFromStream(m_JpegStream); //读Bmp
end;
except
end;
finally
m_JpegStream.Free;
adoQuery1.Close;
end;
end;其实我也是在这儿搜来整理的,建议你多多使用搜索,好吗?
var
Image1:TImage;
begin
Image1.Pictruer.LoadFromFile('pic');
TableImage.Assign(Image1.Pictuere);
Table.post;
end;如果你的水平不是很高,一定不要是用内存流,使用文件流一可以!内存六的出错率特别高,而且不容易调试!