2015年2月27日 星期五
2015年2月6日 星期五
用DELPHI產生HTML
大家熟悉的HTML一般都是用UTF-8格式來做存檔格式,可是DELPHI所用的TXT FILE卻都是用ANSI格式,所以在存檔和轉換都會有許多問題,那怎麼做比較好呢?
筆者最近因為工作上的關係,常會用HTML做樣板,然後再用DELPHI把檔案讀進來,做一些轉換,再形成新的HTML供BROWSER讀取,就碰上了格式的問題。
最後的解決方式是用TStringList的LoadFromFile來解決這個問題
舉例如下
function RefreshHTM():String;
var
HTML1,HTML2 :TStrings;
FG : Boolean;
i : Integer;
begin
try
// 宣告二個TString,HTML1承接HTML樣版,HTML2是做轉換後要顯示的HTML結果
HTML1 := TStringList.Create;
HTML2 := TStringList.Create;
try
// 取得樣版的HTML
HTML1 .LoadFromFile('D:\web_root\html\PTL01U05.htm');
for i :=0 to HTML1.Count-1 do
begin
// 逐筆把資料抓入
Ln := HTML1[i];
// 這邊做想要更換的作
// 把更改後的資料加到HTML2中
HTML2.Add(Ln);
end;
Result := HTML2.Text;
finally
//把資料傳出後,把TString Free 掉
HTML1.Free;
HTML2.Free;
end;
end;
筆者最近因為工作上的關係,常會用HTML做樣板,然後再用DELPHI把檔案讀進來,做一些轉換,再形成新的HTML供BROWSER讀取,就碰上了格式的問題。
最後的解決方式是用TStringList的LoadFromFile來解決這個問題
舉例如下
function RefreshHTM():String;
var
HTML1,HTML2 :TStrings;
FG : Boolean;
i : Integer;
begin
try
// 宣告二個TString,HTML1承接HTML樣版,HTML2是做轉換後要顯示的HTML結果
HTML1 := TStringList.Create;
HTML2 := TStringList.Create;
try
// 取得樣版的HTML
HTML1 .LoadFromFile('D:\web_root\html\PTL01U05.htm');
for i :=0 to HTML1.Count-1 do
begin
// 逐筆把資料抓入
Ln := HTML1[i];
// 這邊做想要更換的作
// 把更改後的資料加到HTML2中
HTML2.Add(Ln);
end;
Result := HTML2.Text;
finally
//把資料傳出後,把TString Free 掉
HTML1.Free;
HTML2.Free;
end;
end;
訂閱:
文章 (Atom)