Auf datei aus Listbox zugreifen

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Telcrome.

    Auf datei aus Listbox zugreifen

    Hallo zusammen. Ich habe den folgenden Code:

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Dim sPath As StringsPath = stationpath
    2. If sPath.EndsWith("\") And sPath.Length > 3 Then sPath = sPath.Substring(0, sPath.Length - 1)End If
    3. Dim oDir As New System.IO.DirectoryInfo(sPath)
    4. Dim oFiles As System.IO.FileInfo() = oDir.GetFiles("*.txt")Dim oFile As System.IO.FileInfoListBox1.Items.Clear()For Each oFile In oFiles ListBox1.Items.Add(oFile.Name)Next



    Jetzt möchte ich zuerst, dass die Namen in der Listbox ohne Dateiendung angezeigt werden.
    Und dann möchte ich machen, dass ich mit Klick auf das Item der Listbox den Text aus der zugehörigen Datei auslesen kann. Wie mache ich das?

    PS: Warum wird mein Code nicht untereinander angezeigt? Sorry, es ist jetzt schlecht lesbar, weiß net warum das so ist!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „greenVB-user“ ()

    1. Editiere den Code im Forum-Editor.
    2. Wenn die Dateien in der Listbox ohne Extension angezeigt werden sollen, musst Du Dir ein Dictionary mit den angezeigten Namen und den vollständigen Pfaden anlegen, damit Du immer von dem einen zum anderen wechseln kannst, denn zum Öffnen brauchst Du den vollständigen Pfad und Namen der Datei.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Das Speichern von Ordnern in die Listbox: (Nur aus einem bestimmten Ordner)

    VB.NET-Quellcode

    1. For Each items As String In IO.Directory.GetDirectories("Dein Pfad wo die Ordner liegen")
    2. items = items.Replace("Dein Pfad", "")
    3. Liste.Items.Add(items)Next

    Dementsprechend um Dateien auszulesen:

    VB.NET-Quellcode

    1. For Each items As String In IO.Directory.GetFiles("Dein Pfad wo die Files liegen")
    2. items = items.Replace("Dein Pfad", "")
    3. items = items.Replace(".txt", "")
    4. Liste.Items.Add(items)Next

    Um die Dateien aus der Listbox heraus zu öffnen schreibst du einfach in den Code wenn du auf die Listbox doppelklickst: (Selectedindex_Changed bei der Listbox) (Ausgehend davon dass du nur Textdateien hast)

    VB.NET-Quellcode

    1. Dim Inhalt As String = My.Computer.FileSystem.ReadAllText("Dein Ordnerpfad\" & LstAlleNummern.SelectedItem & "\.txt")

    ich hoffe ich hab dein Problem richtig verstanden und konnte helfen