delphi中如何把webbrowser里面的内容保存到本地html文件中

我在webbrowser里面绘制了一些文字和控件,请问如果我想对webbrowser里面的内容进行多次利用的话,是先保存到本地文件中再次调用好,还是利用克隆的方式存放起来再次调用好呢?具体如何实现?

具体看你的需求了,如果是程序关闭后下次打开还需要同样的内容,那肯定是要保存到本地文件。如果只是当前运行中多次调用,则看你调用是否频繁,调用较多的话应该保存在内存中,内存速度比较快,修改也方便些。追问

您方便把两种方式的实现方法都告诉我么?我现在不知道如何进行下去,测试了很久都未通过!

追答

保存本地文件的方法:
uses SHDocVw, MSHTML, StdCtrls, ActiveX, ComCtrls;
...
function GetHTMLCode(WB: IWebbrowser2; ACode: TStrings): Boolean;
var ps: IPersistStreamInit;
s: string;
ss: TStringStream;
sa: IStream;
begin
ps := WB.document as IPersistStreamInit;
s := ''; ss := TStringStream.Create(s);
try
sa:= TStreamAdapter.Create(ss, soReference) as IStream;
Result := SUCceeded(ps.Save(sa, Bool(True)));
if Result then
ACode.Add(ss.Datastring);
finally
ss.Free;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
sl:TStringList;
begin
sl:=tstringlist.Create ;
try
GetHTMLCode(wb1.ControlInterface,sl);
sl.SaveToFile('C:\Documents and Settings\Administrator\桌面\1.html');
finally
sl.Free;
end;
end;

温馨提示:答案为网友推荐,仅供参考
相似回答