1. 程式人生 > 實用技巧 >Delphi TWebBrowser[11] 讀寫html程式碼

Delphi TWebBrowser[11] 讀寫html程式碼

Delphi TWebBrowser[11] 讀寫html程式碼

注意:html 是UTF-8編碼的在中文環境下需要轉換成GB2312,否則會顯示中文亂碼

uses ActiveX;

function WB_ReadHTML(aBrowser: TWebBrowser): String;
begin
  Result := aBrowser.OleObject.Document.documentElement.outerHTML;
end;

procedure WB_WriteHTML(aBrowser: TWebBrowser; HTMLCode: string);
var
    sl: TStringList;
    ms: TMemoryStream;
begin
    if Assigned(aBrowser.Document) then
    begin
      sl := TStringList.Create;
      try
        ms := TMemoryStream.Create;
        try
          sl.Text := StringReplace(HTMLCode, 'UTF-8', 'GB2312', [rfReplaceAll, rfIgnoreCase]);
          sl.SaveToStream(ms);
          ms.Seek(0, 0);
          (aBrowser.Document as IPersistStreamInit).Load(TStreamAdapter.Create(ms));
        finally
          ms.Free;
        end;
      finally
        sl.Free;
      end;
    end;
end;

Delphi 呼叫:

procedure TForm1.Button1Click(Sender: TObject);
begin
  WB_WriteHtml(Webbrowser1, Memo1.Text);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Memo1.Text := WB_ReadHTML(Webbrowser1);
end;

  

建立時間:2020.11.23  更新時間: