Text auslesen: Nach bestimmten Zeichen

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von T1g0r.

    Text auslesen: Nach bestimmten Zeichen

    Hi,

    ich lasse eine Datei per Befehl auslesen:

    VB.NET-Quellcode

    1. Dim Zeilen() As String = IO.FIle.ReadAllLines("Pfad\Datei.txt")
    2. 'Beispielsweise Z.11 Zeichen 1
    3. Dim Zeichen As Char = Zeilen(11).Chars(0)


    Doch jetzt möchte ich, dass sobald das Zeichen "[" kommt, der Text ab dem zweiten Zeichen nach "[" bis ein "]" kommt gelesen wird. Und das wenn diese Zeichen auch mehrmals in der Zeile vorkommen.
    Ist das irgendwie möglich?

    Gruß und Danke
    Hab dir mal ein Beispiel geschrieben.

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim Zeilen() As String = IO.File.ReadAllLines("Pfad\Datei.txt")
    3. Dim PosIndex As Integer = 0 'stellt den aktuellen Index da
    4. Dim StartPos As Integer = 0 'stellt den Startindex zum Aufzeichnen dar
    5. For Each aktZeichen As Char In Zeilen(3) 'Jedes Zeichen der angegebenen Zeile durchlaufen
    6. PosIndex += 1 'Position mitzählen
    7. If aktZeichen = "[" Then 'Wenn [ dann
    8. StartPos = PosIndex 'StartIndex zwischenspeichern
    9. ElseIf aktZeichen = "]" Then 'Wenn ] dann in ListBox eintragen
    10. 'StartPos + 2 weil erst 2 Zeichen später angefangen werden soll,
    11. 'PosIndex - StartPos - 3 da die 2 Zeichen vom StartIndex und das ] wieder abgezogen werden müssen
    12. ListBox1.Items.Add(Zeilen(3).Substring(StartPos + 2, PosIndex - StartPos - 3))
    13. End If
    14. Next
    15. End Sub
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia