Comment : copier des fichiers avec un modèle spécifique dans un répertoire dans 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 spécifier 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 d'un modèle spécifique dans un répertoire
Utilisez la méthode GetFiles pour retourner la liste de fichiers. Cet exemple retourne tous les fichiers .rtf 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")
Utilisez la méthode CopyFile pour copier des fichiers. Cet exemple copie les fichiers dans le répertoire nommé testdirectory.
My.Computer.FileSystem.CopyFile(foundFile, "C:\testdirectory\" & My.Computer.FileSystem.GetName(foundFile))
Fermez l'instruction For par une instruction Next.
Next
Exemple
L'exemple suivant qui présente les extraits de code ci-dessus sous leur forme complète, 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é
Les conditions ci-dessous peuvent générer une exception.
Le chemin d'accès n'est pas valide pour l'une des raisons suivantes : il correspond à une chaîne de longueur nulle, ne contient que des espaces blancs, comporte des caractères non valides ou représente un chemin d'accès de périphérique (commençant par \\. \) (ArgumentException).
Le chemin d'accès 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 d'accès 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 d'accès (SecurityException). L'utilisateur n'a pas les autorisations nécessaires (UnauthorizedAccessException).
Voir aussi
Tâches
Comment : rechercher des sous-répertoires avec un modèle spécifique dans Visual Basic
Dépannage : lecture et écriture dans des fichiers texte (Visual Basic)
Comment : placer la collection de fichiers dans un répertoire dans Visual Basic