Genauere Betrachtung: Analysieren von Dateipfaden
Aktualisiert: November 2007
Wenn Sie in Ihrer Anwendung mit Dateien arbeiten, müssen Sie häufig nur auf Teile des Dateipfads verweisen. Beispiel: Sie möchten den Namen einer Datei ohne ihren Pfad anzeigen. Sie können das My.Computer.FileSystem-Objekt für Dateianalyseaufgaben verwenden.
Sie können den Pfad einer Datei mit der My.Computer.FileSystem.GetParentPath-Methode abrufen. Sie können den Namen der Datei ohne ihren Pfad mit der My.Computer.FileSystem.GetFiles-Methode abrufen.
In der unter Abrufen der Namen von Dateien in einem Ordner beschriebenen Bildanzeigeanwendung können Sie z. B. anstelle des vollständigen Pfads für jedes Bild den Pfad entfernen und nur den Namen der Datei anzeigen. In dieser Lektion füllen Sie ein Listenfeld mit den Namen aller Dateien im Ordner Dateien.
Hinweis: |
---|
Unter Windows XP gibt es besondere Ordner mit den Bezeichnungen Eigene Dateien, Eigene Bilder und Eigene Musik. Unter Windows Vista entfällt das Wort "Eigene" in den Bezeichnungen. Sie heißen stattdessen Dateien, Bilder und Musik. Der Code in dieser Lektion wird jedoch sowohl unter Windows XP als auch unter Windows Vista ausgeführt. |
Übung
So analysieren Sie die Dateinamen
Klicken Sie im Menü Datei unter Neu auf den Befehl Projekt.
Klicken Sie im Dialogfeld Neues Projekt im Bereich Vorlagen auf Windows-Anwendung.
Geben Sie im Feld NameDateipfad analysieren ein, und klicken Sie dann auf OK.
Ein neues Windows Forms-Projekt wird geöffnet.
Fügen Sie dem Formular ein ListBox-Steuerelement hinzu, und übernehmen Sie den Standardnamen ListBox1 unverändert.
Fügen Sie dem Formular ein Button-Steuerelement hinzu, übernehmen Sie den Standardnamen Button1, und ändern Sie die Text-Eigenschaft in Laden.
Klicken Sie mit der rechten Maustaste auf das Formular, und klicken Sie auf Code anzeigen.
Fügen Sie unter der Anweisung Public Class Form1 am Anfang der Codedatei folgenden Code hinzu. Mit diesem Code wird eine Variable für den Ordner Dateien erstellt.
Dim FilePath As String = _ My.Computer.FileSystem.SpecialDirectories.MyDocuments
Klicken Sie in der linken Dropdownliste (Klassenname) auf Button1.
Klicken Sie in der rechten Dropdownliste (Methodenname) auf Click, um den Button1_Click-Ereignishandler zu erstellen.
Fügen Sie im Button1_Click-Ereignishandler folgenden Code hinzu: Mit diesem Code werden alle Elemente im Listenfeld gelöscht. Anschließend werden die Dateien im Ordner Dateien durchsucht und ihre Namen dem Listenfeld hinzugefügt. Im Code wird die My.Computer.FileSystem.GetFiles-Methode verwendet, um den Namen der Datei ohne den Ordnerpfad abzurufen.
Dim FoundFile As String Dim FileName As String ' Clear the list box. Me.ListBox1.Items.Clear() ' Add each file in the Documents folder to list box. For Each FoundFile In My.Computer.FileSystem.GetFiles( _ FilePath, FileIO.SearchOption.SearchTopLevelOnly) ' Add only the name of each found file to the list box. FileName = My.Computer.FileSystem.GetName(FoundFile) Me.ListBox1.Items.Add(FileName) Next
Drücken Sie F5, um das Programm auszuführen.
Wenn das Formular angezeigt wird, klicken Sie auf die Schaltfläche Laden .
Im Listenfeld wird der Dateiname (ohne den Pfad) jeder Datei im Ordner Dateien angezeigt.
Schließen Sie die Anwendung Dateipfad analysieren.
Kombinieren von Dateiname und Ordnerpfad
Wenn Sie für die aufgelisteten Dateien eine Aktion ausführen möchten (z. B. Öffnen einer Datei), müssen Sie sowohl den Namen als auch den Pfad der Datei angeben. Mithilfe der My.Computer.FileSystem.CombinePath-Methode können Sie Namen und Pfad kombinieren. Das folgende Beispiel zeigt, wie der Pfad und der Name einer Datei in einem Meldungsfeld angezeigt werden, wenn Sie in einem Listenfeld auf den Namen klicken.
So kombinieren Sie Dateinamen und Ordnerpfad
Doppelklicken Sie in der Designeransicht auf das ListBox, um den standardmäßigen SelectedIndexChanged-Ereignishandler einzugeben.
Fügen Sie im ListBox1_SelectedIndexChanged-Ereignishandler folgenden Code hinzu: Mit diesem Code werden der Ordnerpfad und der Dateiname kombiniert, und der kombinierte Name wird in einem Meldungsfeld angezeigt.
MsgBox(My.Computer.FileSystem.CombinePath( _ FilePath, Me.ListBox1.SelectedItem))
Drücken Sie F5, um das Programm auszuführen.
Wenn das Formular angezeigt wird, klicken Sie auf die Schaltfläche Laden .
Klicken Sie im Listenfeld auf einen Dateinamen.
In einem Meldungsfeld werden der Name und der Pfad der Datei angezeigt.
Schließen Sie die Anwendung.
Nächste Schritte
In dieser Lektion haben Sie gelernt, wie ein Dateipfad analysiert wird, um den Namen einer Datei vom Pfad der Datei zu trennen. Außerdem haben Sie gelernt, wie ein Pfad und ein Dateiname kombiniert werden. In der nächsten Lektion erfahren Sie, wie in eine Textdatei geschrieben wird.
Nächste Lektion: Schreiben in eine Textdatei
Siehe auch
Aufgaben
Abrufen der Namen von Dateien in einem Ordner
Gewusst wie: Analysieren von Dateipfaden in Visual Basic
Konzepte
Weitere Ressourcen
Verwenden des Dateisystems: Schreiben in und Lesen aus Dateien