neue Zeile in 1-dimensionaler Array

mafiamix

Mitglied
Hallo,

ich habe ein Problem und zwar möchte ich von einer Seite den Quelltext einlesen und für ein bestimmtes Zeichen (hier: 0) eine neue Zeile in einer Listbox erstellen.
Das heißt, wenn ich den folgenden Text hätte:

Das ist0ein schöner0Tag.

Dann sollte es in der Listbox so dargestellt werden:

Das ist
ein schöner
Tag

Das ganze hab ich schon mit Zeilenumbrüchen usw. versucht, aber diese werden dann auch nur in einem Eintrag als Viereck (schwarz) angezeigt.

Bisher hab ich es mit dem Code versucht:

Dim test1 As String = client.DownloadString("url.de")

test1 = test1.Replace("0", vbCrLf)



Me.ListBox1.Items.AddRange(New Object() {test1})

Beim Replace hab ich unter anderem auch schon Sachen wie "\n" probiert, was aber alles nicht funktioniert hat.
Kann mir da jemand helfen bzw. wie wäre der Code für so eine neue Zeile?


Lg,

mafiamix
 
Du musst ein Array erstellen und dann den String mit der Split-Funktion spalten. Das Array musst du dann in einer Schleife in die Listbox übergeben.

Nur mal so: "\n" ist so weit ich weiß nicht in DotNet vorhanden; dafür ist vbNewLine oder vbCrLf.

Zum Nachlesen:
String.Split()

Beispiel:
Code:
Dim Test As String = "Das ist0ein schöner0Tag."
Dim Elemente As String() = Test.Split("0")

For Each Element As String In Elemente
   Me.ListBox1.Items.Add(Element)
Next
 
Zuletzt bearbeitet:
Hallo, versuch´s mal so:
Code:
        Dim test1 As String = client.DownloadString("url.de")
        Dim Zeilen() As String = test1.Split("0")

        For N As Integer = 0 To Zeilen.Length - 1
            ListBox1.Items.Add(Zeilen(N))
        Next
 
In einer Listbox kannst du nicht mit Zeilenumbrüchen arbeiten. Du musst stattdessen den String in Teilstrings zerlegen und diese als jeweils ein neues Item einfügen.
Ich hoffe der Code passt einigermaßen; VB ist nicht so meine Welt :)
Code:
Dim test1 As String = client.DownloadString("url.de")
Me.ListBox1.Items.AddRange(test1.Split(New [Char]() {"0"c}))
Gruß
MCoder

// Edit: Da war ich wohl diemal etwas langsam .
 
Wollte nicht extra noch nen neuen Thread eröffnen, weils eigentlich auch zum Thema passt. Und zwar hab ich wieder ein Problem mit der Listbox.
Es soll mit dem Befehl My.settings etwas abgespeichert werden. Jetzt hab ich einen String bei den My.Settings z. B. "string1". Bei diesem String1 soll jetzt der 3. Eintrag der Listbox abgespeichert werden.
Es kann aber auch variabel sein, so dass es nicht immer der 3., sondern auch z. B. der 2. oder 7. sein könnte.
Gibt es also eine Möglichkeit, dass man den String "string1" sowie die Items der Listbox sozusagen unsichtbar nummeriert?
Die Nummerierungen sollen unendlich laufen, also d.h. wenn bei der Listbox eine Nummer dazu kommen würde, würde bei "string1" auch eine dazu kommen. Die 2 Sachen würden also parallel zueinander laufen.
Ist sowas überhaupts möglich?
 

Neue Beiträge

Zurück