delphi中如何把webbrowser里面的内容保存到本地html文件中
我在webbrowser里面绘制了一些文字和控件,请问如果我想对webbrowser里面的内容进行多次利用的话,是先保存到本地文件中再次调用好,还是利用克隆的方式存放起来...
我在webbrowser里面绘制了一些文字和控件,请问如果我想对webbrowser里面的内容进行多次利用的话,是先保存到本地文件中再次调用好,还是利用克隆的方式存放起来再次调用好呢?具体如何实现?
展开
1个回答
展开全部
具体看你的需求了,如果是程序关闭后下次打开还需要同样的内容,那肯定是要保存到本地文件。如果只是当前运行中多次调用,则看你调用是否频繁,调用较多的话应该保存在内存中,内存速度比较快,修改也方便些。
追问
您方便把两种方式的实现方法都告诉我么?我现在不知道如何进行下去,测试了很久都未通过!
追答
保存本地文件的方法:
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;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询