晕,忘记贴代码了不好意思哈!procedure TForm1.Button2Click(Sender: TObject); //上传 var ImgStream: TStream; begin try if fileexists(edit1.Text) then //判断文件是否存在 with table1 do begin table1.Open; Active := true; //indexfieldnames:='ImgName'; //UpLoadImg.LoadFromFile(edit1.text); table1.Insert; //Fields[0].AsString := extractfilename(edit1.text); Fields[0].Assign(Image1.Picture); Post; ShowMessage('Save Picture successfully!'); end; except ShowMessage('Save Picture faild!'); end; Table1.Active := false; //Table1.Close; end;
TBlobField(Fields[0]).LoadFromFile(edti1.text);
TImage是不支持Gif格式的,不知道注册格式有无用。
使用 TBlobField(Fields[0]).LoadFromFile(edti1.text); 插入jpg的时候,提示: BitMap is not valid!
var Ms:TMemoryStream; begin Ms:=TMemoryStream.Create; Ms.LoadFromFile(edti1.text); TBlobField(Fields[0]).LoadFromStream(Ms);
Ms.Free;
应该不会吧procedure TForm1.Button2Click(Sender: TObject); //上传 var Ms:TMemoryStream; begin try if fileexists(edit1.Text) then //判断文件是否存在 with table1 do begin table1.Open; Active := true; Ms:=TMemoryStream.Create; Ms.LoadFromFile(edti1.text); TBlobField(Fields[0]).LoadFromStream(Ms); Ms.Free; table1.Insert; Post; ShowMessage('Save Picture successfully!'); end; except ShowMessage('Save Picture faild!'); end; Table1.Active := false; end;
var MS_JpegStream:TMemoryStream; begin …… try MS_JpegStream:=TMemoryStream.Create; pic1_img.Picture.Graphic.SaveToStream(ms_jpegstream); Parameters.ParamByName('pic1').LoadFromStream(MS_JpegStream,ftblob); finally MS_JpegStream.Free; end end;这里是通过SQL语句参数保存的。 GIF需要到网上找一个支持GIF的控件。
只是Delphi中TImage等控件不支持GIF格式
//上传
var ImgStream: TStream;
begin
try
if fileexists(edit1.Text) then //判断文件是否存在
with table1 do
begin
table1.Open;
Active := true;
//indexfieldnames:='ImgName';
//UpLoadImg.LoadFromFile(edit1.text);
table1.Insert;
//Fields[0].AsString := extractfilename(edit1.text);
Fields[0].Assign(Image1.Picture);
Post;
ShowMessage('Save Picture successfully!');
end;
except
ShowMessage('Save Picture faild!');
end;
Table1.Active := false;
//Table1.Close;
end;
TBlobField(Fields[0]).LoadFromFile(edti1.text);
插入jpg的时候,提示:
BitMap is not valid!
Ms:TMemoryStream;
begin
Ms:=TMemoryStream.Create;
Ms.LoadFromFile(edti1.text); TBlobField(Fields[0]).LoadFromStream(Ms);
Ms.Free;
//上传
var
Ms:TMemoryStream;
begin
try
if fileexists(edit1.Text) then //判断文件是否存在
with table1 do
begin
table1.Open;
Active := true;
Ms:=TMemoryStream.Create;
Ms.LoadFromFile(edti1.text);
TBlobField(Fields[0]).LoadFromStream(Ms);
Ms.Free;
table1.Insert;
Post;
ShowMessage('Save Picture successfully!');
end;
except
ShowMessage('Save Picture faild!');
end;
Table1.Active := false;
end;
1、GifImage,网上找找看,应该有;
2、保存到数据库,用TBlobField。
Ms.LoadFromFile(edti1.text);
Ms.position:=0; 好象是这样吧?
TBlobField(Fields[0]).LoadFromStream(Ms);
MS_JpegStream:TMemoryStream;
begin
……
try
MS_JpegStream:=TMemoryStream.Create;
pic1_img.Picture.Graphic.SaveToStream(ms_jpegstream);
Parameters.ParamByName('pic1').LoadFromStream(MS_JpegStream,ftblob);
finally
MS_JpegStream.Free;
end
end;这里是通过SQL语句参数保存的。
GIF需要到网上找一个支持GIF的控件。