请高手指点两个问题 :
1:怎么样把本地的图片上传到数据库中,及在本地打开图片。或者上传到服务器中指定文件夹内。
2:怎么样把本地的word文档,pdf格式的文件上传到数据库中,或上传到服务器中指定的文件夹内,并在本地打开。请高手指点的时候说得越详细越好,本人非常菜。关于第一个问题自己解决了一部份,遇到了问题,就是上传得时候能上传jpg,bmp等格式的图片,但是打开的时候image只能打开jpg格式的图片,其余的就出错。代码如下
上传图片 :
procedure TForm4.BitBtn1Click(Sender: TObject);
var
fs:Tfilestream;
begin
dm.ADOCommand1.CommandText:='delete from callingcard where id='''+dbedit10.Text+''' ';
dm.ADOCommand1.Execute;
fs:=Tfilestream.Create(edit2.Text,fmopenread);
dm.ADOQuery1.Close;
dm.ADOQuery1.SQL.Text:='select id,tupian from callingcard';
dm.ADOQuery1.Open;
dm.ADOQuery1.Append;
dm.ADOQuery1.FieldByName('id').AsInteger:=strtoint(dbedit10.Text);
TBlobfield(dm.ADOQuery1.FieldByName('tupian')).LoadFromStream(fs);
dm.ADOQuery1.Post;
fs.Free;
showmessage('添加名片成功');
edit2.Clear;
end;
打开如下 :
procedure TForm4.BitBtn3Click(Sender: TObject);
var
jpeg:Tjpegimage;
begin
dm.ADOQuery1.Close;
dm.ADOQuery1.SQL.Text:='select id,tupian from callingcard where id='''+dbedit10.Text+''' ';
dm.ADOQuery1.Open;
if dm.ADOQuery1.FieldByName('tupian').AsString<>'' then
begin
jpeg:=Tjpegimage.Create;
TBlobfield(dm.ADOQuery1.FieldByName('tupian')).SaveToFile('c:\com.jpg');
jpeg.LoadFromFile('C:\com.jpg');
image1.Picture.Assign(jpeg);
end;
end;
1:怎么样把本地的图片上传到数据库中,及在本地打开图片。或者上传到服务器中指定文件夹内。
2:怎么样把本地的word文档,pdf格式的文件上传到数据库中,或上传到服务器中指定的文件夹内,并在本地打开。请高手指点的时候说得越详细越好,本人非常菜。关于第一个问题自己解决了一部份,遇到了问题,就是上传得时候能上传jpg,bmp等格式的图片,但是打开的时候image只能打开jpg格式的图片,其余的就出错。代码如下
上传图片 :
procedure TForm4.BitBtn1Click(Sender: TObject);
var
fs:Tfilestream;
begin
dm.ADOCommand1.CommandText:='delete from callingcard where id='''+dbedit10.Text+''' ';
dm.ADOCommand1.Execute;
fs:=Tfilestream.Create(edit2.Text,fmopenread);
dm.ADOQuery1.Close;
dm.ADOQuery1.SQL.Text:='select id,tupian from callingcard';
dm.ADOQuery1.Open;
dm.ADOQuery1.Append;
dm.ADOQuery1.FieldByName('id').AsInteger:=strtoint(dbedit10.Text);
TBlobfield(dm.ADOQuery1.FieldByName('tupian')).LoadFromStream(fs);
dm.ADOQuery1.Post;
fs.Free;
showmessage('添加名片成功');
edit2.Clear;
end;
打开如下 :
procedure TForm4.BitBtn3Click(Sender: TObject);
var
jpeg:Tjpegimage;
begin
dm.ADOQuery1.Close;
dm.ADOQuery1.SQL.Text:='select id,tupian from callingcard where id='''+dbedit10.Text+''' ';
dm.ADOQuery1.Open;
if dm.ADOQuery1.FieldByName('tupian').AsString<>'' then
begin
jpeg:=Tjpegimage.Create;
TBlobfield(dm.ADOQuery1.FieldByName('tupian')).SaveToFile('c:\com.jpg');
jpeg.LoadFromFile('C:\com.jpg');
image1.Picture.Assign(jpeg);
end;
end;
解决方案 »
- 如何实现“打开所在文件夹”,并使文件获得焦点
- MM求救5
- 得到一個窗體上的所有adotable,adoquery對象?
- 放分200:今天办理结婚登记,up有分
- 简单问题,快来拿分!先到先得!!在线等待
- 如何在OleContainer打开一个ole对象后,仍然可在程序中控制鼠标事件
- 我想实现在DBgrid中一些列可修改,一些不可修改,可能吗?
- SQL Server在存储jpg图像后,对图像字段进行修改就不起作用了......
- 餐饮吧台部分,用什么GRID实现的显示所有餐桌?每个单元格中可以显示图片?
- QRDBRichText怎么用,连上数据库的字段为什么显示不出来?
- delphi提交网面参数?
- 生成TStringList派生类的问题(在线等待)
2、打开时,让操作系统自己识别:
var
filePath: string;filePath := 临时文件目录+数据库文件名称;
ShellExecute(Application.Handle,'open',PChar(filePath),nil,nil,SW_SHOWNORMAL);
高手能不能说仔细点?