線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2047
推到 Plurk!
推到 Facebook!

rtf 檔如何讀入

答題得分者是:hagar
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-01-08 17:30:32 IP:61.66.xxx.xxx 未訂閱
請問各位! 1.我有外部的一個 rtf檔, 要如何指定給一個變數 2.或者要如何存入一個 blob 的欄位 才可以包含 format格式(字型及大小等)都具備 我試過 table.loadfromfile(), 結果是只存了一堆format亂碼而已
ccchen
版主


發表:61
回覆:940
積分:1394
註冊:2002-04-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-01-08 19:46:51 IP:203.217.xxx.xxx 未訂閱
TBLOBField(DataSet.FieldByName('XXX')).LoadFromFile(vFileName);
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-01-08 23:19:56 IP:61.66.xxx.xxx 未訂閱
引言: TBLOBField(DataSet.FieldByName('XXX')).LoadFromFile(vFileName);
這個用法好像與 Table1"blobfield".loadformfile(vFilename)功能一樣, 我試了 的結果是有存入, 但在 FastReport的 RichText要載入時仍然是亂碼一堆!
懷舊的人
高階會員


發表:28
回覆:152
積分:141
註冊:2003-01-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-01-10 11:50:30 IP:152.104.xxx.xxx 未訂閱
引言: 這個很簡單要多用TRichEdit , TStream, CreateBolbStream ..., 請用 Help 查相關主題,謝謝。
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-01-10 13:57:32 IP:202.39.xxx.xxx 未訂閱
procedure SetRTFTextFromBlobField( dsData: TDataSet; const sField: string; reEdit: TRichEdit );
var
  oBS: TBlobStream;
begin
  oBS := TBlobStream.Create(dsData.FieldByName(sField) as TBlobField, bmRead);
  try
    reEdit.Lines.LoadFromStream(oBS);
  finally
    oBS.Free;
  end;
end;
   
procedure SaveRTFTextToBlobField( dsData: TDataSet; const sField: string; reEdit: TRichEdit );
var
  oBS: TBlobStream;
begin
  if not (dsData.State in [dsEdit, dsInsert]) then
    dsData.Edit;
  oBS := TBlobStream.Create(dsData.FieldByName(sField) as TBlobField, bmWrite);
  try
    reEdit.Lines.SaveToStream(oBS);
    dsData.Post;
  finally
    oBS.Free;
  end;
end;
--
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-01-10 16:02:34 IP:61.66.xxx.xxx 未訂閱
引言:
procedure SetRTFTextFromBlobField( dsData: TDataSet; const sField: string; reEdit: TRichEdit );
var
  oBS: TBlobStream;
begin
  oBS := TBlobStream.Create(dsData.FieldByName(sField) as TBlobField, bmRead);
  try
    reEdit.Lines.LoadFromStream(oBS);
  finally
    oBS.Free;
  end;
end;
   
procedure SaveRTFTextToBlobField( dsData: TDataSet; const sField: string; reEdit: TRichEdit );
var
  oBS: TBlobStream;
begin
  if not (dsData.State in [dsEdit, dsInsert]) then
    dsData.Edit;
  oBS := TBlobStream.Create(dsData.FieldByName(sField) as TBlobField, bmWrite);
  try
    reEdit.Lines.SaveToStream(oBS);
    dsData.Post;
  finally
    oBS.Free;
  end;
end;
--
感謝! 原來還要透過一個richtext來做中介, 資料已可以轉入, 但在FR中另有一個問題, 但不屬本討論區, 所以另談了!
系統時間:2024-04-25 7:13:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!