Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.31;
Скачать: CL | DM;

Вниз

Загрузка файлов и превращение html->txt   Найти похожие ветки 

 
Данил.Ялта   (2006-12-12 08:29) [0]

Два вопроса:
1) как тхт или хтмл файл из интернета сохранить на диск?
2) как текст, который есть в хтмл странице сохранить в тхт файл, чтоб тегов в нем уже не было?


 
novill ©   (2006-12-12 09:44) [1]

1. либо компонентами (Indy) либо функцией Internetreadfile.
2. проще всего (WebBrowser.Document as IHtmlDocument2).body.outerText


 
MetalFan ©   (2006-12-12 12:32) [2]

2. проще написать свой алгоритм удаления всего, что в <>


 
MetalFan ©   (2006-12-12 12:58) [3]

вот мой вариант "убивалки" тэгов.
работать будет 100% быстрее, чем [1]2
function RemoveTags( const AHTML: string ): string;
var
 i: Integer;
 lLenHTML, lLenResult: Integer;
 lChr: Char;
 lSkip: Boolean;
 lSetRes: Boolean;
begin
 Result := "";
 lLenHTML := Length( AHTML );
 if lLenHTML = 0 then Exit;
 lLenResult := 0;
 lSetRes := False; //флаг установки длины Result
 lSkip := False;  //флаг пропуска содержания <>
 for i := 1 to lLenHTML do // понеслась
 begin
   lChr := AHTML[i]; //берем символ из строки
   if lChr in ["<",">"] then //если к начало/конец тэга
   begin
     lSkip := lChr = "<"; //то выставляем/сбрасываем флаг пропуска
     Continue;
   end;
   if not lSkip then
   begin
     if not lSetRes then
     begin
       lSetRes := True;
       SetLength( Result, lLenHTML ); //сразу резервируем длину строки по максимуму        
     end;
     Inc( lLenResult );
     Result[lLenResult] := lChr; //так работает быстрее, чем просто Result := Result + lChr; проверено
   end;
 end;
 SetLength( Result, lLenResult); //"обрезаем" лишний мусор.
end;



Страницы: 1 вся ветка

Текущий архив: 2006.12.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.057 c
2-1165756805
nurlan_1
2006-12-10 16:20
2006.12.31
Table1: No index currently active


11-1131454344
algambra
2005-11-08 15:52
2006.12.31
замены системных модулей


2-1165761948
Flood_control
2006-12-10 17:45
2006.12.31
Отправить окно в трэй с помощью ShowWindow


15-1165923956
novill
2006-12-12 14:45
2006.12.31
Перепись Ростовчан :)


15-1165008730
lookin
2006-12-02 00:32
2006.12.31
Relative path name в Delphi.