Guide pratique pour copier des fichiers avec un modèle spécifique dans un répertoire en Visual Basic

La méthode GetFiles retourne une collection en lecture seule de chaînes représentant les noms de chemin des fichiers. Vous pouvez utiliser le paramètre wildCards pour indiquer un modèle spécifique.

Une collection vide est retournée si aucun fichier correspondant n’est trouvé.

Vous pouvez utiliser la méthode CopyFile pour copier les fichiers dans un répertoire.

Pour copier des fichiers avec un modèle spécifique dans un répertoire

  1. Utilisez la méthode GetFiles pour retourner la liste des fichiers. Cet exemple retourne tous les fichiers .rtf qui se trouvent dans le répertoire spécifié.

    For Each foundFile As String In My.Computer.FileSystem.GetFiles(
        My.Computer.FileSystem.SpecialDirectories.MyDocuments,
        Microsoft.VisualBasic.FileIO.SearchOption.SearchTopLevelOnly, "*.rtf")
    
  2. Utilisez la méthode CopyFile pour copier les fichiers. Cet exemple copie les fichiers dans le répertoire nommé testdirectory.

    My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & My.Computer.FileSystem.GetName(foundFile))
    
  3. Terminez l’instruction For par une instruction Next .

    Next
    

Exemple

L’exemple suivant, qui présente les extraits de code ci-dessus dans leur intégralité, copie tous les fichiers .rtf du répertoire spécifié dans le répertoire nommé testdirectory.

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

Sécurité du .NET Framework

Les conditions ci-dessous peuvent générer une exception.

  • Le chemin n’est pas valide pour l’une des raisons suivantes : il s’agit d’une chaîne de longueur nulle, il ne contient que des espaces blancs, il contient des caractères non valides ou il s’agit d’un chemin d’appareil (qui commence par \\.\) (ArgumentException).

  • Le chemin n'est pas valide, car il a la valeur Nothing (ArgumentNullException).

  • Le répertoire n’existe pas (DirectoryNotFoundException).

  • Le répertoire pointe vers un fichier existant (IOException).

  • Le chemin d'accès dépasse la longueur maximale définie par le système (PathTooLongException).

  • Un nom de fichier ou de répertoire du chemin contient un signe deux-points (:) ou n'a pas un format correct (NotSupportedException).

  • L'utilisateur n'a pas les autorisations nécessaires pour afficher le chemin (SecurityException). L'utilisateur ne dispose pas des autorisations nécessaires (UnauthorizedAccessException).

Voir aussi