DirectoryInfo.Delete Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Elimina un DirectoryInfo oggetto e il relativo contenuto da un percorso.
Overload
| Nome | Descrizione |
|---|---|
| Delete() |
Elimina questo valore DirectoryInfo se è vuoto. |
| Delete(Boolean) |
Elimina questa istanza di un oggetto DirectoryInfo, specificando se eliminare sottodirectory e file. |
Delete()
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
Elimina questo valore DirectoryInfo se è vuoto.
public:
override void Delete();
public override void Delete();
override this.Delete : unit -> unit
Public Overrides Sub Delete ()
Eccezioni
La directory contiene un file di sola lettura.
La directory descritta da questo DirectoryInfo oggetto non esiste o non è stato trovato.
La directory non è vuota.
oppure
La directory è la directory di lavoro corrente dell'applicazione.
oppure
Esiste un handle aperto nella directory e il sistema operativo è Windows XP o versioni precedenti. Questo handle aperto può derivare dall'enumerazione delle directory. Per altre informazioni, vedere Procedura: Enumerare directory e file.
Il chiamante non dispone dell'autorizzazione richiesta.
Esempio
Nell'esempio seguente viene generata un'eccezione se si tenta di eliminare una directory non vuota.
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
Commenti
Per un elenco delle attività di I/O comuni, vedere Attività di I/O comuni.
Vedi anche
Si applica a
Delete(Boolean)
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
- Origine:
- DirectoryInfo.cs
Elimina questa istanza di un oggetto DirectoryInfo, specificando se eliminare sottodirectory e file.
public:
void Delete(bool recursive);
public void Delete(bool recursive);
override this.Delete : bool -> unit
Public Sub Delete (recursive As Boolean)
Parametri
- recursive
- Boolean
true per eliminare questa directory, le relative sottodirectory e tutti i file; in caso contrario, false.
Eccezioni
La directory contiene un file di sola lettura.
La directory descritta da questo DirectoryInfo oggetto non esiste o non è stato trovato.
La directory è di sola lettura.
oppure
La directory contiene uno o più file o sottodirectory e recursive è false.
oppure
La directory è la directory di lavoro corrente dell'applicazione.
oppure
Esiste un handle aperto nella directory o in uno dei relativi file e il sistema operativo è Windows XP o versioni precedenti. Questo handle aperto può derivare dall'enumerazione di directory e file. Per altre informazioni, vedere Procedura: Enumerare directory e file.
Il chiamante non dispone dell'autorizzazione richiesta.
Esempio
Nell'esempio seguente viene illustrata l'eliminazione di una directory. Poiché la directory viene rimossa, impostare come commento prima la Delete riga per verificare che la directory esista. Rimuovere quindi il commento dalla stessa riga di codice per verificare che la directory sia stata rimossa correttamente.
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)
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
Commenti
DirectoryInfo Se non dispone di file o sottodirectory, questo metodo elimina anche DirectoryInfo se recursive è false. Tentativo di eliminare un oggetto DirectoryInfo che non è vuoto quando recursive viene false generata un'eccezione IOException.
Per un elenco delle attività di I/O comuni, vedere Attività di I/O comuni.