Directory.Move(String, String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Déplace un fichier ou un répertoire et son contenu vers un nouvel emplacement.
public:
static void Move(System::String ^ sourceDirName, System::String ^ destDirName);
public static void Move(string sourceDirName, string destDirName);
static member Move : string * string -> unit
Public Shared Sub Move (sourceDirName As String, destDirName As String)
Paramètres
- sourceDirName
- String
Chemin d’accès du fichier ou du répertoire à déplacer.
- destDirName
- String
Chemin d’accès au nouvel emplacement pour sourceDirName ou à son contenu. S’il sourceDirName s’agit d’un fichier, il doit également s’agir destDirName d’un nom de fichier.
Exceptions
Une tentative a été effectuée pour déplacer un répertoire vers un autre volume.
- ou -
destDirName existe déjà. Consultez la note dans la section Remarques.
- ou -
Les sourceDirName paramètres et destDirName les paramètres font référence au même fichier ou répertoire.
- ou -
Le répertoire ou un fichier qu’il contient est utilisé par un autre processus.
L’appelant n’a pas l’autorisation requise.
.NET Framework et .NET Core versions antérieures à 2.1 : sourceDirName ou destDirName est une chaîne de longueur nulle, contient uniquement un espace blanc ou contient un ou plusieurs caractères non valides. Vous pouvez rechercher des caractères non valides avec la GetInvalidPathChars() méthode.
sourceDirName ou destDirName est null.
Le chemin d’accès spécifié, le nom de fichier ou les deux dépassent la longueur maximale définie par le système.
Le chemin spécifié par sourceDirName n’est pas valide (par exemple, il se trouve sur un lecteur non mappé).
Exemples
L’exemple suivant montre comment déplacer un répertoire et tous ses fichiers vers un nouveau répertoire. Le répertoire d’origine n’existe plus après son déplacement.
using System;
using System.IO;
partial class Program
{
static void DirectoryMoveExample()
{
string sourceDirectory = @"C:\source";
string destinationDirectory = @"C:\destination";
try
{
Directory.Move(sourceDirectory, destinationDirectory);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
open System.IO
let sourceDirectory = @"C:\source"
let destinationDirectory = @"C:\destination"
try
Directory.Move(sourceDirectory, destinationDirectory)
with e ->
printfn $"{e.Message}"
Imports System.IO
Partial Class Program
Shared Sub DirectoryMoveExample()
Dim sourceDirectory As String = "C:\source"
Dim destinationDirectory As String = "C:\destination"
Try
Directory.Move(sourceDirectory, destinationDirectory)
Catch e As Exception
Console.WriteLine(e.Message)
End Try
End Sub
End Class
Remarques
Cette méthode crée un répertoire portant le nom spécifié destDirName et déplace le contenu du sourceDirNamerépertoire de destination nouvellement créé, y compris les fichiers et les répertoires. Il supprime ensuite le sourceDirName répertoire.
Si vous essayez de déplacer un répertoire vers un répertoire qui existe déjà, un IOException événement se produit.
Les sourceDirName arguments et destDirName les arguments sont autorisés à spécifier des informations relatives ou absolues sur le chemin d’accès. Les informations relatives au chemin d’accès sont interprétées comme relatives au répertoire de travail actuel. Pour obtenir le répertoire de travail actuel, consultez GetCurrentDirectory.
Les espaces de fin sont supprimés de la fin des paramètres de chemin avant de déplacer le répertoire.
Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.
Note
À compter de .NET Core 3.0, la Move méthode lève une IOException dans toutes les plateformes lorsqu’il destDirName existe déjà. Consultez le changement de nom C++.