全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1314
推到 Plurk!
推到 Facebook!

如何讀取TBytesField的內容?

 
chrislao
初階會員


發表:86
回覆:69
積分:36
註冊:2002-12-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-08-19 12:56:06 IP:202.175.xxx.xxx 未訂閱
在ms-sql 內有一欄位的型態是binary,用來存儲圖像檔案或pdf檔,存入資料庫是使用Blob轉換成String的方法存入,但怎樣可以從資料庫讀取出來再用Timage 顯示圖檔?

function BlobContentToString(filename:string):string;
var
fs:TFilestream;
begin
fs:=TFileStream.Create(filename,fmOpenRead);
try
setLength(result,fs.size);
fs.Read(result[1],fs.Size);
finally
fs.Free;
end;
end;

procedure TForm1.savedata(oFilename:String);
begin
if oFilename <> '' then
begin
with adoqReportDetail do
begin
FieldByName('PD_Content').AsString:=BlobContentToString(oFilename);
Post;
end;
end;
end;

pgdennis
資深會員


發表:41
回覆:526
積分:443
註冊:2002-05-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-08-22 09:57:04 IP:218.163.xxx.xxx 未訂閱
procedure TForm1.Button1Click(Sender: TObject);
var
sm: TStringStream;
sm1:TmemoryStream;
begin

try
sm:= TStringStream.Create(adotable1.fieldbyname('BT1').AsString);
sm1:=TmemoryStream.Create;
sm1.CopyFrom(sm,sm.Size);
sm1.SaveToFile('c:\1.jpg');
finally
sm.Free;
sm1.Free;
end;
end;
------
星期一,二...無窮迴圈@@
pgdennis
資深會員


發表:41
回覆:526
積分:443
註冊:2002-05-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-08-22 09:57:15 IP:218.163.xxx.xxx 未訂閱
procedure TForm1.Button1Click(Sender: TObject);
var
sm: TStringStream;
sm1:TmemoryStream;
begin

try
sm:= TStringStream.Create(adotable1.fieldbyname('BT1').AsString);
sm1:=TmemoryStream.Create;
sm1.CopyFrom(sm,sm.Size);
sm1.SaveToFile('c:\1.jpg');
finally
sm.Free;
sm1.Free;
end;
end;
------
星期一,二...無窮迴圈@@
系統時間:2024-06-26 11:43:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!