Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi HTML-Quellcode in Memo einlesen (https://www.delphipraxis.net/8060-html-quellcode-memo-einlesen.html)

magoo2002de 27. Aug 2003 19:00


HTML-Quellcode in Memo einlesen
 
Hallo,

ich habe da mal wieder ein Problem und hoffe, dass mir jemand hier helfen kann.
Und zwar möchte ich den Quellcode einer HTML-Datei in ein Memo einlesen. Das Problem (zumindest für mich) ist, das der Quellcode zunächst vom Anfang bis zu einem HTML-Kommentar im Quellcode eingelesen werden soll. Danach sollen einige andere Strings aus dem Programm heraus eingefügt werden und das soll wieder aus der HTML-Datei von einem anderen HTML-Kommentar bis zum Ende der Quellcode eingefügt werden.
Ein Beispiel:
Es befinden sich zwei Kommentare im HTML-Quellcode einer beinhaltet "BeginList" der andere "EndList". Nun soll in ein Memo-Feld der Quellcode vom bis zum HTML-Kommentar "BeginList" eingelesen. Danach soll vom Kommentar "EndList" bis zum Ende der Quellcode eingelesen.

Ich hoffe, dass ich das einigermaßen verständlich erklärt habe und mir jemand helfen kann.

CalganX 27. Aug 2003 19:13

Re: HTML-Quellcode in Memo einlesen
 
Hi,
am Besten lädst du dir als erstes die Datei in eine temporäre StringListe:
Delphi-Quellcode:
slTemp.LoadFromFile('DeineHTMLDatei.html');
Danach liest du alles in das Memo bis zu deinem Kommentar, den du am Besten als Konstante deklarierst:
Delphi-Quellcode:
const
  COMMENT_START = '';
  COMMENT_END  = '';

{...}
var
  i, j: integer;
{...}
  i:=0;
  while (slTemp[i] <> COMMENT_START) do begin
    Memo1.Lines.Add(slTemp[i]);
    inc(i);
  end;
  // Füge deinen eigenen Text dem Memo hinzu
  for j:=i to slTemp.Count - 1 do begin
    Memo1.Lines.Add(slTemp[j]);
  end;
Sicherlich nicht die eleganteste Art (noch verbesserungswürdig), aber das ist mir jetzt auf die Schnelle eingefallen.

Chris

magoo2002de 27. Aug 2003 19:24

Re: HTML-Quellcode in Memo einlesen
 
Hallo Chakotay1308,

erst mal vielen Dank für deine schnelle Antwort. Das ist das, was ich an diesem Forum so liebe.
Ich werde es gleich mal ausprobieren. Wenn dir noch eine andere Lösung kannst du es ja gerne posten oder mir ja eine PN schicken.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz