Forum: PC-Programmierung Zeilenumbrüche Textbox VB.net


von Peter (Gast)


Lesenswert?

Hallo zusammen!

Ich habe folgendes Problem:

Mit
1
            Dim client As New Net.WebClient
2
            buffer = client.DownloadString(url)
3
            txt_output1.Text = buffer

Lade ich mir den HTML-Quellentext einer Website in eine Textbox.
Das funktionier soweit ohne Probleme.

Wenn ich den Code aus der Textbox in einen beliebigen Editor (z.B. 
Nodepad++) kopiere, so wird mir der Text sauber mit Zeilenumbrüchen und 
Tabulatoren dargestellt.
In der Textbox ist dies nicht der Fall.

Weis jemand von euch, ob es irgendwelche Settings bei Textboxen gibt, 
damit diese die Zeilenumbrüche ebenfalls erkennen, oder muss ich den 
String nach den "Zeilenumbruchzeichen" durchsuchen und die dann quasi 
durch "vbcrlf" ersetzen.

Danke für eure Hilfe!
lg

von Michael (Gast)


Lesenswert?

Für die Textbox muss die Eigenschaft "Multiline" = TRUE eingestellt 
sein. Ist es das?

von Peter (Gast)


Lesenswert?

Michael schrieb:
> Für die Textbox muss die Eigenschaft "Multiline" = TRUE
> eingestellt
> sein. Ist es das?

Ja, natürlich.

Aber der Text wird in der Textbox wie folgt dargestellt:
1
<!DOCTYPE html><html lang="de" dir="ltr"><head>  <title>      News - Mikrocontroller.net  </title>

Wenn ich den Text aus der Textbox in z.B. dieses Forum kopiere, wird er 
gleich richtig dargestellt:
1
<!DOCTYPE html>
2
<html lang="de" dir="ltr">
3
<head>
4
  <title>
5
      News - Mikrocontroller.net
6
  </title>

von Peter (Gast)


Lesenswert?

Peter schrieb:
> Michael schrieb:
>> Für die Textbox muss die Eigenschaft "Multiline" = TRUE
>> eingestellt
>> sein. Ist es das?
>
> Ja, natürlich.

Ich meinte, dass Multiline = TRUE natürlich eingestellt ist. An dem 
liegts nicht.

von Michael (Gast)


Lesenswert?

Probier es mal damit:

txt_output1.Text = buffer.Replace(vbLf, Environment.NewLine)

von Peter (Gast)


Lesenswert?

Michael schrieb:
> txt_output1.Text = buffer.Replace(vbLf, Environment.NewLine)

Jop, das funzt! Vielen Dank!
Diese Idee hatte ich auch schon.

Also muss die Zeilenumbruch immer ersetzt werden? (geht also nicht mit 
ändern der Settings der Textbox?)

von Michael (Gast)


Lesenswert?

Das kannst du aber nicht generell so machen.
Ist davon abhängig, was der Server als Zeilenumbruch schickt, bzw. wie 
die html-Datei codiert wurde.
Wenn nur LF verwendet wird, dann solltest du es durch CR+LF ersetzen.
Wenn CR+LF verwendet wird, solltest du es nicht ersetzen.

Vielen Editoren ist das egal, ob CR+LF oder nur LF. Sie zeigen immer 
einen Umbruch an.

von Peter (Gast)


Lesenswert?

Ah, ok. Das wusste ich nicht. Vielen Dank für die Info.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.