معلم دلفی

دوشنبه، مرداد ۱۹، ۱۳۸۳

Saving a website as html file

چگونه می توان محتوای یک سایت را بصورت HTM ذخیره کرد
شاید تا بحال با این مشکل برخورد کرده باششید که بخواهید محتوای یک سایت را با دادن آدرس آن در یک فایل ذخیره کنید. همانطور که می دانید در مرورگر اینترنت اینکار با انتخاب منوی فایل امکانپذیر است.
در زبان دلفی با استفاده از کامپوننت زیر می توانید یک آدرس را داده و محتوای آن صفحه را ببینید.
TWebBrowser
اما برای اینکه بتوانید محتوای خوانده شده را ذخیره کنید باید برنامه آنرا بصورت زیر بنویسید:


uses ActiveX;
...
procedure WB_SaveAs_HTML(WB:TWebBrowser; const FileName : string);
var
PersistStream: IPersistStreamInit;
Stream: IStream;
FileStream: TFileStream;
begin
if not Assigned(WB.Document) then
begin
ShowMessage('Document not loaded!');
Exit;
end;
PersistStream := WB.Document as IPersistStreamInit;
FileStream := TFileStream.Create(FileName, fmCreate);
try
Stream := TStreamAdapter.Create(FileStream, soReference) as IStream;
if Failed(PersistStream.Save(Stream, True)) then
ShowMessage('SaveAs HTML fail!');
finally
FileStream.Free;
end;
end; (* WB_SaveAs_HTML *)




هیچ نظری موجود نیست: