DirectoryInfo.Delete 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.
Supprime DirectoryInfo et son contenu d’un chemin d’accès.
Surcharges
Delete() |
Supprime cet élément DirectoryInfo s'il est vide. |
Delete(Boolean) |
Supprime cette instance d'un élément DirectoryInfo, en spécifiant si les sous-répertoires et les fichiers doivent être supprimés. |
Delete()
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
Supprime cet élément DirectoryInfo s'il est vide.
public:
override void Delete();
public override void Delete ();
override this.Delete : unit -> unit
Public Overrides Sub Delete ()
Exceptions
Le répertoire contient un fichier en lecture seule.
Le répertoire décrit par l'objet DirectoryInfo n'existe pas ou est introuvable.
Le répertoire n'est pas vide.
- ou -
Le répertoire correspond au répertoire de travail actuel de l’application.
- ou -
Un handle est ouvert sur le répertoire et le système d'exploitation est Windows XP ou une version antérieure. Ce handle ouvert peut être le résultat d’une énumération de répertoires. Pour plus d’informations, consultez Comment : énumérer des répertoires et fichiers.
L'appelant n'a pas l'autorisation requise.
Exemples
L’exemple suivant lève une exception si vous tentez de supprimer un répertoire qui n’est pas vide.
using namespace System;
using namespace System::IO;
int main()
{
// Specify the directories you want to manipulate.
DirectoryInfo^ di1 = gcnew DirectoryInfo( "c:\\MyDir" );
try
{
// Create the directories.
di1->Create();
di1->CreateSubdirectory( "temp" );
//This operation will not be allowed because there are subdirectories.
Console::WriteLine( "I am about to attempt to delete {0}", di1->Name );
di1->Delete();
Console::WriteLine( "The Delete operation was successful, which was unexpected." );
}
catch ( Exception^ )
{
Console::WriteLine( "The Delete operation failed as expected." );
}
}
using System;
using System.IO;
class Test
{
public static void Main()
{
// Specify the directories you want to manipulate.
DirectoryInfo di1 = new DirectoryInfo(@"c:\MyDir");
try
{
// Create the directories.
di1.Create();
di1.CreateSubdirectory("temp");
//This operation will not be allowed because there are subdirectories.
Console.WriteLine("I am about to attempt to delete {0}", di1.Name);
di1.Delete();
Console.WriteLine("The Delete operation was successful, which was unexpected.");
}
catch (Exception)
{
Console.WriteLine("The Delete operation failed as expected.");
}
finally {}
}
}
open System.IO
// Specify the directories you want to manipulate.
let di1 = DirectoryInfo @"c:\MyDir"
try
// Create the directories.
di1.Create()
di1.CreateSubdirectory "temp" |> ignore
//This operation will not be allowed because there are subdirectories.
printfn $"I am about to attempt to delete {di1.Name}"
di1.Delete()
printfn "The Delete operation was successful, which was unexpected."
with _ ->
printfn "The Delete operation failed as expected."
Imports System.IO
Public Class Test
Public Shared Sub Main()
' Specify the directories you want to manipulate.
Dim di1 As DirectoryInfo = New DirectoryInfo("c:\MyDir")
Try
' Create the directories.
di1.Create()
di1.CreateSubdirectory("temp")
'This operation will not be allowed because there are subdirectories.
Console.WriteLine("I am about to attempt to delete {0}", di1.Name)
di1.Delete()
Console.WriteLine("The Delete operation was successful, which was unexpected.")
Catch
Console.WriteLine("The Delete operation was unsuccessful, as expected.")
End Try
End Sub
End Class
Remarques
Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches courantes d’E/S.
Voir aussi
- Fichier et flux de données E/S
- Procédure : lire le texte d’un fichier
- Procédure : écrire du texte dans un fichier
S’applique à
Delete(Boolean)
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
- Source:
- DirectoryInfo.cs
Supprime cette instance d'un élément DirectoryInfo, en spécifiant si les sous-répertoires et les fichiers doivent être supprimés.
public:
void Delete(bool recursive);
public void Delete (bool recursive);
override this.Delete : bool -> unit
Public Sub Delete (recursive As Boolean)
Paramètres
- recursive
- Boolean
true
pour supprimer ce répertoire, ses sous-répertoires et tous ses fichiers ; sinon, false
.
Exceptions
Le répertoire contient un fichier en lecture seule.
Le répertoire décrit par l'objet DirectoryInfo n'existe pas ou est introuvable.
Le répertoire est en lecture seule.
- ou -
Le répertoire contient un ou plusieurs fichiers ou sous-répertoires et recursive
est false
.
- ou -
Le répertoire correspond au répertoire de travail actuel de l’application.
- ou -
Un handle est ouvert sur le répertoire ou sur l'un de ses fichiers, et le système d'exploitation est Windows XP ou une version antérieure. Ce handle ouvert peut être le résultat d’une énumération de répertoires et de fichiers. Pour plus d’informations, consultez Comment : énumérer des répertoires et fichiers.
L'appelant n'a pas l'autorisation requise.
Exemples
L’exemple suivant illustre la suppression d’un répertoire. Étant donné que le répertoire est supprimé, commencez par commenter la Delete
ligne pour tester l’existence du répertoire. Supprimez ensuite les marques de commentaire de la même ligne de code pour vérifier que le répertoire a été supprimé correctement.
using namespace System;
using namespace System::IO;
int main()
{
// Make a reference to a directory.
DirectoryInfo^ di = gcnew DirectoryInfo( "TempDir" );
// Create the directory only if it does not already exist.
if ( !di->Exists )
di->Create();
// Create a subdirectory in the directory just created.
DirectoryInfo^ dis = di->CreateSubdirectory( "SubDir" );
// Process that directory as required.
// ...
// Delete the subdirectory. The true indicates that if subdirectories
// or files are in this directory, they are to be deleted as well.
dis->Delete( true );
// Delete the directory.
di->Delete( true );
}
using System;
using System.IO;
public class DeleteTest
{
public static void Main()
{
// Make a reference to a directory.
DirectoryInfo di = new DirectoryInfo("TempDir");
// Create the directory only if it does not already exist.
if (di.Exists == false)
di.Create();
// Create a subdirectory in the directory just created.
DirectoryInfo dis = di.CreateSubdirectory("SubDir");
// Process that directory as required.
// ...
// Delete the subdirectory. The true indicates that if subdirectories
// or files are in this directory, they are to be deleted as well.
dis.Delete(true);
// Delete the directory.
di.Delete(true);
}
}
open System.IO
// Make a reference to a directory.
let di = DirectoryInfo "TempDir"
// Create the directory only if it does not already exist.
if not di.Exists then
di.Create()
// Create a subdirectory in the directory just created.
let dis = di.CreateSubdirectory "SubDir"
// Process that directory as required.
// ...
// Delete the subdirectory. The true indicates that if subdirectories
// or files are in this directory, they are to be deleted as well.
dis.Delete true
// Delete the directory.
di.Delete true
Imports System.IO
Public Class DeleteTest
Public Shared Sub Main()
' Make a reference to a directory.
Dim di As New DirectoryInfo("TempDir")
' Create the directory only if it does not already exist.
If di.Exists = False Then
di.Create()
End If
Dim dis As DirectoryInfo = di.CreateSubdirectory("SubDir")
' Create a subdirectory in the directory just created.
' Process that directory as required.
' ...
' Delete the subdirectory. The true indicates that if subdirectories
' or files are in this directory, they are to be deleted as well.
dis.Delete(True)
' Delete the directory.
di.Delete(True)
End Sub
End Class
Remarques
Si le n’a pas de DirectoryInfo
fichiers ou de sous-répertoires, cette méthode supprime même DirectoryInfo
si recursive
est false
. Tentative de suppression d’un DirectoryInfo
qui n’est pas vide lorsque recursive
lève false
un IOException.
Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches courantes d’E/S.
Voir aussi
- Fichier et flux de données E/S
- Procédure : lire le texte d’un fichier
- Procédure : écrire du texte dans un fichier