Gewusst wie: Kopieren von Dateien mit einem bestimmten Muster in ein Verzeichnis in Visual Basic

Die GetFiles -Methode gibt eine schreibgeschützte Auflistung von Zeichenfolgen zurück, die die Pfadnamen für die Dateien darstellen. Sie können den wildCards -Parameter verwenden, um ein bestimmtes Muster anzugeben.

Wenn keine übereinstimmenden Dateien gefunden werden, wird eine leere Auflistung zurückgegeben.

Mit der CopyFile -Methode können Sie die Dateien in ein Verzeichnis kopieren.

So kopieren Sie Dateien mit einem bestimmten Muster in ein Verzeichnis

  1. Verwenden Sie die GetFiles -Methode, um die Liste der Dateien zurückzugeben. In diesem Beispiel werden alle RTF-Dateien im angegebenen Verzeichnis zurückgegeben.

    For Each foundFile As String In My.Computer.FileSystem.GetFiles(
        My.Computer.FileSystem.SpecialDirectories.MyDocuments,
        Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")
    
  2. Verwenden Sie die CopyFile -Methode, um die Dateien zu kopieren. In diesem Beispiel werden die Dateien in das Verzeichnis testdirectorykopiert.

    My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & My.Computer.FileSystem.GetName(foundFile))
    
  3. Schließen Sie die For -Anweisung mit einer Next -Anweisung.

    Next
    

Beispiel

Im folgenden Beispiel, das der vollständigen Fassung der oben aufgeführten Codeausschnitte entspricht, werden alle RTF-Dateien im angegebenen Verzeichnis in das Verzeichnis testdirectorykopiert.

For Each foundFile As String In My.Computer.FileSystem.GetFiles(
    My.Computer.FileSystem.SpecialDirectories.MyDocuments,
    Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")

    My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & foundFile)
Next

.NET Framework-Sicherheit

Die folgenden Bedingungen können einen Ausnahmefehler verursachen:

  • Der Pfad ist aus einem der folgenden Gründe ungültig: Er ist eine Zeichenfolge der Länge 0 (null), er enthält nur Leerzeichen, er enthält ungültige Zeichen, oder er ist ein Gerätepfad (beginnt mit \\.\) (ArgumentException).

  • Der Pfad ist ungültig, da er Nothing ist (ArgumentNullException).

  • Das Verzeichnis ist nicht vorhanden (DirectoryNotFoundException).

  • Das Verzeichnis verweist auf eine vorhandene Datei (IOException).

  • Der Pfad überschreitet die im System definierte maximale Länge (PathTooLongException).

  • Der Pfad eines Datei- oder Verzeichnisnamens enthält einen Doppelpunkt (:) oder hat ein ungültiges Format (NotSupportedException).

  • Dem Benutzer fehlen die erforderlichen Berechtigungen zum Anzeigen des Pfades (SecurityException). Der Benutzer verfügt nicht über die erforderlichen Berechtigungen (UnauthorizedAccessException).

Weitere Informationen