Abrufen der Namen von Dateien in einem Ordner
Aktualisiert: November 2007
In dieser Lektion lernen Sie, wie Sie mit dem My.Computer.FileSystem-Objekt die Namen von Dateien in einem Ordner abrufen.
Ein Ordner ist ein Bereich in Microsoft Windows, in dem Dateien gespeichert werden können. Microsoft Windows verfügt über einige besondere Ordner, mit denen Sie Dateien in Kategorien, wie beispielsweise Dokumente, Bilder und Musikdateien, einteilen können.
![]() |
---|
Unter Windows XP haben diese Ordner die 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. |
In dieser Lektion erstellen Sie eine Bildanzeigeanwendung, mit der Sie Bilddateien anzeigen können, die sich im Ordner Bilder befinden. Wenn Sie ein Element in einer ListBox auswählen, wird die entsprechende Grafik in einem PictureBox-Steuerelement angezeigt.
Abrufen von Dateien
Mit der My.Computer.FileSystem.FileExists-Methode können Sie unter Angabe des Ordnerpfads und des Dateinamens überprüfen, ob eine spezielle Datei vorhanden ist.
Wenn Sie die Namen aller Dateien in einem Ordner abrufen möchten, können Sie das My-Objekt verwenden, um eine Auflistung aller Dateien in einem bestimmten Ordner zu erhalten. Sie können auch durch Angabe eines Musters nach einer Datei mit einem eindeutigen Namen suchen.
Verwenden Sie die My.Computer.FileSystem.GetFiles-Methode, um die Dateien im angegebenen Ordner zurückzugeben. Sie können eine optionale Liste von Platzhaltern übergeben, um ein Muster für Dateien anzugeben, die Sie zurückgeben möchten. Beispielsweise können Sie die Namen aller Dateien abrufen, die als GIF (Graphics Interchange Format)-Bilder vorliegen, indem Sie als Dateinamenerweiterung GIF (*.gif*) vorgeben. Sie können weitere Grafikformattypen hinzufügen, beispielsweise das JPEG (Joint Photographic Experts Group)-Format, indem Sie als Erweiterung (*.jpg*) angeben und die Erweiterungen durch Kommas trennen.
Sie können einen besonderen Ordner angeben, z. B. Bilder, indem Sie das My.Computer.FileSystem.SpecialDirectories-Objekt verwenden. Damit wird der Name jeder Datei, einschließlich des vollständigen Pfads, zurückgegeben. Sie können dann die zurückgegebenen Dateinamen durchlaufen und jeden Dateinamen der ListBox hinzufügen.
Übung
So erstellen Sie die Benutzeroberfläche für die Anwendung
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 Name die Bezeichnung Bildanzeige ein, und klicken Sie dann auf OK.
Ein neues Windows Forms-Projekt wird geöffnet.
Klicken Sie auf das Formular, und ändern Sie im Fenster Eigenschaften die folgenden Eigenschaften:
Eigenschaft
Wert
Text
Bildanzeige
Größe
400, 472
Fügen Sie dem Formular ein ListBox-Steuerelement hinzu, und übernehmen Sie den Standardnamen ListBox1 unverändert.
Klicken Sie auf die ListBox, und ändern Sie die folgenden Eigenschaften:
Eigenschaft
Wert
HorizontalScrollBar
True
Größe
370, 82
Fügen Sie dem Formular ein PictureBox-Steuerelement hinzu, und übernehmen Sie den Standardnamen PictureBox1 unverändert.
Klicken Sie auf die PictureBox, und ändern Sie die folgenden Eigenschaften:
Eigenschaft
Wert
BorderStyle
FixedSingle
SizeMode
StretchImage
Größe
370, 285
Fügen Sie dem Formular ein Button-Steuerelement hinzu.
Ändern Sie die folgenden Eigenschaften des Button:
Eigenschaft
Wert
Name
LoadPictures
Text
Bilder laden
Größe
80, 23
Nachdem die Benutzeroberfläche für Bildanzeige erstellt wurde, können Sie Code schreiben, um die Dateinamen abzurufen.
So rufen Sie Dateinamen ab
Doppelklicken Sie auf die Bilder laden-Schaltfläche, um den Standardereignishandler im Code Editor einzufügen.
Fügen Sie im LoadPictures_Click-Ereignishandler den folgenden Code hinzu, um alle GIF- und JPEG-Dateien im Ordner Bilder abzurufen und deren Dateinamen im Listenfeld anzuzeigen. Im Code wird mithilfe der Suchoption SearchTopLevelOnly festgelegt, dass Unterordner im Ordner Bilder nicht durchsucht werden sollen.
' Clear the list box and the picture box. Me.ListBox1.Items.Clear() Me.PictureBox1.ImageLocation = "" ' Add each image in the Pictures directory to list box. For Each foundImage As String In _ My.Computer.FileSystem.GetFiles( _ My.Computer.FileSystem.SpecialDirectories.MyPictures, _ FileIO.SearchOption.SearchTopLevelOnly, "*.gif*", "*.jpg*") Me.ListBox1.Items.Add(foundImage) Next
Fügen Sie den folgenden Code hinzu, um dem Benutzer ein Meldungsfeld anzuzeigen, wenn sich keine Bilder im Ordner Bilder befinden.
If Me.ListBox1.Items.Count < 1 Then MsgBox("There are no JPEG or GIF images in" _ & " the Picture folder.") End If
Drücken Sie F5, um das Programm auszuführen.
Klicken Sie auf die Schaltfläche Bilder laden, wenn das Formular angezeigt wird.
Im Listenfeld werden der Dateiname und der Pfad jeder GIF- bzw. JPEG-Datei im Verzeichnis Bilder angezeigt.
Schließen Sie die Bildanzeigeanwendung.
In diesem Beispiel ist der Pfad zu den Dateien im Verzeichnis Bilder lang, sodass Sie einen Bildlauf nach rechts durchführen müssen, um die eigentlichen Dateinamen zu sehen. Sie könnten alternativ jede Zeichenfolge bearbeiten, indem Sie den Ordnerpfad vom Dateinamen trennen. Weitere Informationen finden Sie unter Genauere Betrachtung: Analysieren von Dateipfaden.
Anzeigen von Bildern
Das Hinzufügen der Dateinamen zum Listenfeld wäre interessanter, wenn Sie auch jedes Bild in einer Vorschau anzeigen könnten. Im diesem Verfahren schreiben Sie Code in den SelectedIndexChanged-Ereignishandler von ListBox1, um in der PictureBox das ausgewählte Bild anzuzeigen.
So zeigen Sie die Bilder an
Klicken Sie im Code-Editor in der Dropdownliste Klassenname auf ListBox1.
Klicken Sie in der Dropdownliste Methodenname auf SelectedIndexChanged, um den Ereignishandler zu erstellen.
Fügen Sie im ListBox1_SelectedIndexChanged-Ereignishandler den folgenden Code hinzu, um das ausgewählte Bild anzuzeigen.
Me.PictureBox1.ImageLocation = Me.ListBox1.SelectedItem
Drücken Sie F5, um das Programm auszuführen.
Klicken Sie auf die Schaltfläche, um die Bilder aus dem Verzeichnis Bilder zu laden, und klicken Sie anschließend auf den Dateinamen im Listenfeld. Jedes Mal, wenn Sie in der Liste auf ein Element klicken, wird ein neues Bild angezeigt.
Schließen Sie die Bildanzeigeanwendung, und speichern Sie das Projekt. Sie verwenden dieses Projekt in der nächsten Lektion.
Nächste Schritte
In dieser Lektion haben Sie gelernt, wie Dateinamen aus einem Ordner abgerufen werden, und wie die Dateien auf einem Windows Form angezeigt werden. In der nächsten Lektion erfahren Sie, wie Dateinamen in einer Textdatei gespeichert werden. Auch unter Genauere Betrachtung: Analysieren von Dateipfaden können Sie mehr über die Bearbeitung von Dateinamen erfahren.
Nächste Lektion: Schreiben in eine Textdatei
Siehe auch
Konzepte
Weitere Ressourcen
Verwenden des Dateisystems: Schreiben in und Lesen aus Dateien