Autor Beitrag
lukkee
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 27



BeitragVerfasst: Di 27.01.09 13:32 
Hallo ich bin C# neuling.. und habe eine einfache Frage.

Ich hole mir mittels Webbrowser.DocumenText den Quelltext einer seite.
Wie kann ich diesen Quelltext in eine Liste laden und diese Liste zeile für zeile durchgehen ?
Die funktion "DocumentText" gibt leider nur einen String zurück somit ist das ein laaanger string (Das will ich vermeiden).
In delphi habe ich das ganz einfach in eine StringListe geladen.

Kann mir irgendwer ein paar tipps geben ?
Danke schoon mal

greetz
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Di 27.01.09 13:55 
Hallo,

das Problem liegt darin, dass Du festlegen musst, wo eine neue Zeile beginnen soll. Dazu kannst Du String.Split verwenden (es gibt eine Überladung, die ein String-Array als Trenner verwendet, z.B. "<br>" und "<br/>" und "<br />"); aber die Trenner fehlen im Ziel-Array. Mein Vorschlag lautet deshalb:

Füge zunächst in mehrfachem Aufruf von String.Replace an allen gewünschten Trennstellen einen eigenen Trenner, z.B. "[CR/LF]", ein. Dann führe String.Split mit diesem Trenner aus. Das Ergebnis ist ein String-Array ohne diesen Trenner, aber mit allen anderen Trennern.

Mit RegEx geht es höchstwahrscheinlich viel schneller und einfacher; aber dazu habe ich keine Ahnung.

Gruß Jürgen

PS. Zur weiteren Verarbeitung: Es kommt darauf an, was Du machen willst - nur lesen/anzeigen oder ändern. Arrays haben im Prinzip eine feste Größe. Besser ist ggf. ein Konvertieren nach List<string> und Arbeiten damit.