My.Computer.FileSystem.CopyFile, méthode

Mise à jour : novembre 2007

Copie un fichier vers un nouvel emplacement.

' Usage
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,overwrite)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,showUI)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,showUI ,onUserCancel)
' Declaration
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String _
)
' -or-
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String, _
   ByVal overwrite As Boolean _
)
' -or-
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String, _
   ByVal showUI As UIOption _
)
' -or-
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String, _
   ByVal showUI As UIOption, _
   ByVal onUserCancel As UICancelOption _
)

Paramètres

  • sourceFileName
    String. Fichier à copier. Obligatoire.

  • destinationFileName
    String. Emplacement vers lequel le fichier doit être copié. Obligatoire.

  • overwrite
    Boolean. Si les fichiers existants doivent être remplacés. La valeur par défaut est False. Obligatoire.

  • showUI
    UIOption. Si besoin d'un suivi visuel de l'avancement de l'opération. La valeur par défaut est UIOption.OnlyErrorDialogs. Obligatoire.

  • onUserCancel
    UICancelOption. Spécifie l'action à effectuer si l'utilisateur clique sur Annuler pendant l'opération. La valeur par défaut est ThrowException. Obligatoire.

Exceptions

Les conditions ci-dessous peuvent lever une exception :

  • Le chemin d'accès n'est pas valide pour 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'accès de périphérique (qui commence par \\.\) (ArgumentException).

  • Le système n'a pas pu récupérer le chemin d'accès absolu (ArgumentException).

  • destinationFileName contient des informations relatives au chemin d'accès (ArgumentException).

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

  • destinationFileName a la valeur Nothing ou est une chaîne vide (ArgumentNullException).

  • Le fichier source n'est pas valide ou n'existe pas (FileNotFoundException).

  • Le chemin d'accès combiné pointe vers un répertoire existant (IOException).

  • Le fichier de destination existe et overwrite a la valeur False (IOException).

  • L'utilisateur n'a pas les autorisations suffisantes pour accéder au fichier (IOException).

  • Un fichier du répertoire cible qui porte le même nom est en cours d'utilisation (IOException).

  • 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).

  • UICancelOption a la valeur ThrowException, et l'utilisateur a annulé l'opération (OperationCanceledException).

  • UICancelOption a la valeur ThrowException, et une erreur d'E/S non spécifiée s'est produite (OperationCanceledException).

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

  • L'utilisateur n'a pas l'autorisation requise (UnauthorizedAccessException).

  • L'utilisateur n'a pas les autorisations nécessaires pour afficher le chemin d'accès (SecurityException).

Notes

CopyFile ne conserve pas les entrées du contrôle d'accès (ACE, Access Control Entries). Le fichier nouvellement créé hérite des entrées ACE par défaut du répertoire dans lequel il est créé.

Tâches

Le tableau suivant répertorie des exemples de tâches impliquant la méthode My.Computer.FileSystem.CopyFile.

Pour

Consultez

Copier un fichier vers le même répertoire.

Comment : créer une copie d'un fichier dans le même répertoire dans Visual Basic

Copier un fichier vers un autre répertoire.

Comment : créer une copie d'un fichier dans un autre répertoire dans Visual Basic

Exemple

Cet exemple copie le fichier Test.txt dans le répertoire TestFiles2 sans remplacer les fichiers existants.

My.Computer.FileSystem.CopyFile _
("C:\UserFiles\TestFiles\test.txt", _
"C:\UserFiles\TestFiles2")

Remplacez les chemins d'accès par ceux que vous souhaitez utiliser dans votre code.

Cet exemple copie le fichier Test.txt dans le répertoire TestFiles2et le renomme NewFile.txt.

My.Computer.FileSystem.CopyFile _
("C:\UserFiles\TestFiles\test.txt", _
"C:\UserFiles\TestFiles2", "NewFile.txt", FileIO.UICancelOption.DoNothing)

Remplacez les chemins d'accès par ceux que vous souhaitez utiliser dans votre code.

Configuration requise

Espace de noms :Microsoft.VisualBasic.MyServices

Classe :FileSystemProxy (fournit l'accès à FileSystem)

Assembly : bibliothèque runtime Visual Basic (dans Microsoft.VisualBasic.dll)

Disponibilité par type de projet

Type de projet

Disponible

Application Windows

Oui

Bibliothèque de classes

Oui

Application console

Oui

Bibliothèque de contrôles Windows

Oui

Bibliothèque de contrôles Web

Oui

Service Windows

Oui

Site Web

Oui

Autorisations

Les autorisations suivantes peuvent être nécessaires :

Autorisation

Description

EnvironmentPermission

Contrôle la possibilité d'accéder à toutes les variables d'environnement. Énumération associée : Unrestricted.

FileIOPermission

Contrôle la possibilité d'accéder à des fichiers et à des dossiers. Énumération associée : Unrestricted.

RegistryPermission

Contrôle la possibilité d'accéder aux variables du Registre. Énumération associée : Unrestricted.

UIPermission

Contrôle les autorisations relatives aux interfaces utilisateur et au presse-papiers. Énumération associée : SafeSubWindows.

Pour plus d'informations, consultez Sécurité d'accès du code et Demande d'autorisations.

Voir aussi

Tâches

Comment : copier des fichiers avec un modèle spécifique dans un répertoire dans Visual Basic

Comment : créer une copie d'un fichier dans le même répertoire dans Visual Basic

Comment : copier un répertoire vers un autre répertoire dans Visual Basic

Comment : renommer un fichier dans Visual Basic

Référence

My.Computer.FileSystem, objet

UICancelOption, énumération