Главная страница
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.075 c
2-1165860520
M1sT
2006-12-11 21:08
2006.12.31
Как и где правильно хранить пароль администратора программы?


2-1165941009
Kostafey
2006-12-12 19:30
2006.12.31
Запись и вызов методов из массива


4-1156501872
Тфьу
2006-08-25 14:31
2006.12.31
Как отловить ошибку макроса Excel?


2-1165911751
Aks13
2006-12-12 11:22
2006.12.31
Программно нажать кнопку на форме


4-1156242003
Speak
2006-08-22 14:20
2006.12.31
просмотр директори