Problem beim auslesen eines eigenen Dateiformates

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Pascal J..

    Problem beim auslesen eines eigenen Dateiformates

    Hallo,
    Ich habe ein Prblem mit meinem eigenen Textformat. Das speichern funktioniert tadellos. Nur beim auslesen habe ich einige Probleme.

    Mein Format

    {Hallo;Arial;001;Black;18}

    Ausgabe:

    Hallo


    Hier mal mein Code zum auslesen:

    VB.NET-Quellcode

    1. Dim text() As String
    2. Dim Word As String
    3. Dim daten() As String
    4. Dim loadtext As String = My.Computer.FileSystem.ReadAllText(dlgOpenFile.FileName)
    5. text = Regex.Split(loadtext, "{(.*?)}")
    6. For i As Integer = 0 To text.Length - 1
    7. daten = Regex.Split(text(i), ";")
    8. For ii As Integer = 0 To daten.Length - 1 Step 6
    9. Word = daten(ii)
    10. Me.rtf_box.Text = Me.rtf_box.Text & Word
    11. Next ii
    12. Next i


    Eigentlich könnte ich die Daten ja über den Index des Arrays ansprechen, aber beim debuggen sagt er mir das ich außerhalb des Indexbereich bin.
    „Ex-ter-mi-nate all knock-knock jokes! They are an enemy of the daleks “ A Dalek
    Mein Blog zum Thema Klarträumen
    hmm, verstehe schon mal nicht warum Du 2x splittest und dann auch noch ausgerechnet mit Step 6 durchläufst (sind ja nur 5 Attribute).

    Würde eher eine gescheite Regex mit Klammern für die 5 Attribute definieren und dann die Matches.Collection durchlaufen.
    Es geht auch ohne RegEx

    VB.NET-Quellcode

    1. Dim textinhalt As String = "{Hallo;Arial;001;Black;18}"
    2. Dim daten() As String = textinhalt.Substring(1, textinhalt.Length - 2).Split(CType(";", Char))
    3. For index As Integer = 0 To daten.Length - 1
    4. MessageBox.Show(String.Format("Index: {0}, Inhalt: {1}", index, daten(index).ToString))
    5. Next
    Danke für die Hilfe, ich werde mich damit mal auseinandersetzen.

    @xtts02

    Ich will nicht nur eine geschweifte Klammer nehmen. Nämlich wenn ich mehrere habe werden der letzte und erste Eintrag einer Klammer zusammengefügt, aber da du das ja sicher nur als Ansatz gesehen hast und ich ihn sowieso noch etwas anpasse ist es ja icht schlimm.
    „Ex-ter-mi-nate all knock-knock jokes! They are an enemy of the daleks “ A Dalek
    Mein Blog zum Thema Klarträumen