Informazioni
L'argomento richiesto è visualizzato di seguito, ma non è incluso in questa libreria.

Classe DirectoryInfo

Espone i metodi dell'istanza per la creazione, lo spostamento e l'enumerazione tramite directory e sottodirectory. Questa classe non può essere ereditata.

Spazio dei nomi:  System.IO
Assembly:  mscorlib (in mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class DirectoryInfo : FileSystemInfo

Il tipo DirectoryInfo espone i seguenti membri.

  NomeDescrizione
Metodo pubblicoSupportato da XNA FrameworkDirectoryInfoInizializza una nuova istanza della classe DirectoryInfo sul percorso specificato.
In alto

  NomeDescrizione
Proprietà pubblicaSupportato da XNA FrameworkAttributesOttiene o imposta gli attributi per il file o la directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaSupportato da XNA FrameworkCreationTimeOttiene o imposta l'ora di creazione del file o della directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaCreationTimeUtcOttiene o imposta l'ora di creazione, nell'ora UTC (Coordinated Universal Time) del file o della directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaSupportato da XNA FrameworkExistsRecupera un valore che indica se la directory esiste. (Esegue l'override di FileSystemInfo.Exists).
Proprietà pubblicaSupportato da XNA FrameworkExtensionRecupera la stringa che rappresenta l'estensione del file. (Ereditato da FileSystemInfo)
Proprietà pubblicaSupportato da XNA FrameworkFullNameRecupera il percorso completo del file o della directory. (Ereditato da FileSystemInfo)
Proprietà pubblicaSupportato da XNA FrameworkLastAccessTimeRecupera o imposta l'ora in cui è avvenuto l'ultimo accesso al file o alla directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaLastAccessTimeUtcOttiene o imposta l'ora, nell'ora UTC (Universal Coordinated Time), dell'ultimo accesso al file o alla directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaSupportato da XNA FrameworkLastWriteTimeRecupera o imposta l'ora dell'ultima modifica del file o della directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaLastWriteTimeUtcOttiene o imposta l'ora, nell'ora UTC (Universal Coordinated Time), dell'ultima scrittura al file o alla directory corrente. (Ereditato da FileSystemInfo)
Proprietà pubblicaSupportato da XNA FrameworkNameRecupera il nome di questa istanza di DirectoryInfo. (Esegue l'override di FileSystemInfo.Name).
Proprietà pubblicaSupportato da XNA FrameworkParentRecupera la directory padre di una sottodirectory specificata.
Proprietà pubblicaSupportato da XNA FrameworkRootOttiene la radice della directory.
In alto

  NomeDescrizione
Metodo pubblicoSupportato da XNA FrameworkCreate()Crea una directory.
Metodo pubblicoCreate(DirectorySecurity)Crea una directory utilizzando l'oggetto DirectorySecurity.
Metodo pubblicoCreateObjRefConsente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto. (Ereditato da MarshalByRefObject)
Metodo pubblicoSupportato da XNA FrameworkCreateSubdirectory(String)Crea una o più sottodirectory sul percorso specificato. Il percorso specificato può essere relativo a questa istanza della classe DirectoryInfo.
Metodo pubblicoCreateSubdirectory(String, DirectorySecurity)Crea una o più sottodirectory sul percorso specificato con la sicurezza specificata. Il percorso specificato può essere relativo a questa istanza della classe DirectoryInfo.
Metodo pubblicoSupportato da XNA FrameworkDelete()Elimina questo oggetto DirectoryInfo se vuoto. (Esegue l'override di FileSystemInfo.Delete()).
Metodo pubblicoSupportato da XNA FrameworkDelete(Boolean)Elimina questa istanza di DirectoryInfo, specificando se eliminare le sottodirectory e i file.
Metodo pubblicoEnumerateDirectories()Restituisce un insieme enumerabile di informazioni sulla directory nella directory corrente.
Metodo pubblicoEnumerateDirectories(String)Restituisce una raccolta enumerabile di informazioni sulla directory che corrispondono a un criterio di ricerca specificato.
Metodo pubblicoEnumerateDirectories(String, SearchOption)Restituisce una raccolta enumerabile di informazioni sulla directory che corrispondono a un criterio di ricerca e all'opzione di ricerca subdirectory specificati.
Metodo pubblicoEnumerateFiles()Restituisce un insieme enumerabile di informazioni sui file nella directory corrente.
Metodo pubblicoEnumerateFiles(String)Restituisce una raccolta enumerabile di informazioni sui file che corrispondono a un criterio di ricerca.
Metodo pubblicoEnumerateFiles(String, SearchOption)Restituisce una raccolta enumerabile di informazioni sui file che corrispondono a un criterio di ricerca e all'opzione di ricerca subdirectory specificati.
Metodo pubblicoEnumerateFileSystemInfos()Restituisce una raccolta enumerabile di informazioni di file system nella directory corrente.
Metodo pubblicoEnumerateFileSystemInfos(String)Restituisce una raccolta enumerabile di informazioni sul file system che corrisponde a un criterio di ricerca specificato.
Metodo pubblicoEnumerateFileSystemInfos(String, SearchOption)Restituisce una raccolta enumerabile di informazioni sul file system che corrisponde a un criterio di ricerca e all'opzione di ricerca subdirectory specificati.
Metodo pubblicoSupportato da XNA FrameworkEquals(Object) Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object)
Metodo pubblicoGetAccessControl()Ottiene un oggetto DirectorySecurity che incapsula le voci dell'elenco di controllo di accesso (ACL) per la directory descritta dall'oggetto DirectoryInfo corrente.
Metodo pubblicoGetAccessControl(AccessControlSections)Ottiene un oggetto DirectorySecurity che incapsula il tipo specificato di voci dell'elenco di controllo di accesso (ACL) per la directory descritta dall'oggetto DirectoryInfo corrente.
Metodo pubblicoSupportato da XNA FrameworkGetDirectories()Restituisce le sottodirectory della directory corrente.
Metodo pubblicoSupportato da XNA FrameworkGetDirectories(String)Restituisce una matrice di directory nell'oggetto DirectoryInfo corrente che corrisponde ai criteri di ricerca specificati.
Metodo pubblicoGetDirectories(String, SearchOption)Restituisce una matrice di directory nella classe DirectoryInfo corrente che corrisponde ai criteri di ricerca forniti e che utilizza un valore per determinare se eseguire la ricerca nelle sottodirectory.
Metodo pubblicoSupportato da XNA FrameworkGetFiles()Restituisce un elenco di file della directory corrente.
Metodo pubblicoSupportato da XNA FrameworkGetFiles(String)Restituisce un elenco di file della directory corrente corrispondente al criterio di ricerca fornito.
Metodo pubblicoGetFiles(String, SearchOption)Restituisce un elenco di file dalla directory corrente che corrisponde al criterio di ricerca fornito e che utilizza un valore per determinare se eseguire la ricerca nelle sottodirectory.
Metodo pubblicoSupportato da XNA FrameworkGetFileSystemInfos()Restituisce una matrice di voci FileSystemInfo fortemente tipizzate che rappresenta tutti i file e le sottodirectory in una directory.
Metodo pubblicoSupportato da XNA FrameworkGetFileSystemInfos(String)Recupera una matrice di oggetti FileSystemInfo fortemente tipizzati che rappresenta i file e le sottodirectory corrispondenti ai criteri di ricerca specificati.
Metodo pubblicoGetFileSystemInfos(String, SearchOption)Recupera una matrice di oggetti FileSystemInfo che rappresenta i file e le sottodirectory corrispondenti ai criteri di ricerca specificati.
Metodo pubblicoSupportato da XNA FrameworkGetHashCode Funge da funzione hash per un particolare tipo. (Ereditato da Object)
Metodo pubblicoGetLifetimeServiceConsente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza. (Ereditato da MarshalByRefObject)
Metodo pubblicoGetObjectDataImposta l'oggetto SerializationInfo con il nome del file e le informazioni aggiuntive sull'eccezione. (Ereditato da FileSystemInfo)
Metodo pubblicoSupportato da XNA FrameworkGetType Ottiene il Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblicoInitializeLifetimeServiceConsente di ottenere un oggetto servizio di durata per il controllo dei criteri di durata per l'istanza. (Ereditato da MarshalByRefObject)
Metodo pubblicoSupportato da XNA FrameworkMoveToSposta un'istanza di DirectoryInfo e il relativo contenuto in un nuovo percorso.
Metodo pubblicoSupportato da XNA FrameworkRefreshAggiorna lo stato dell'oggetto. (Ereditato da FileSystemInfo)
Metodo pubblicoSetAccessControlApplica le voci dell'elenco di controllo di accesso (ACL) descritte da un oggetto DirectorySecurity nella directory specificata dall'oggetto DirectoryInfo corrente.
Metodo pubblicoSupportato da XNA FrameworkToStringRestituisce il percorso originale passato dall'utente. (Esegue l'override di Object.ToString()).
In alto

Utilizzare la classe DirectoryInfo per le operazioni tipiche, quali copia, spostamento, ridenominazione, creazione ed eliminazione di directory.

Se si intende riutilizzare più volte un oggetto, si consideri l'utilizzo del metodo dell'istanza di DirectoryInfo,anziché dei corrispondenti metodi statici della classe Directory, poiché un controllo di sicurezza non sarà sempre necessario.

NotaNota

Nei membri che accettano un percorso come stringa di input, il formato di tale percorso deve essere corretto; in caso contrario verrà generata un'eccezione. Se un percorso, ad esempio, è completo ma inizia con uno spazio, lo spazio non verrà eliminato nei metodi della classe. Il formato risulterà pertanto scorretto e verrà generata un'eccezione. Analogamente, un percorso o una combinazione di percorsi non possono essere specificati completamente due volte. Anche "c:\temp c:\windows", ad esempio, nella maggior parte dei casi genera un'eccezione. Quando si utilizzano metodi che accettano una stringa di percorso, assicurarsi che i percorsi abbiano il formato corretto.

Nei membri che accettano un percorso, quest'ultimo può fare riferimento a un file o solo a una directory. Il percorso specificato può anche fare riferimento a un percorso relativo o UNC (Universal Naming Convention) per un server e un nome di condivisione. Tutti i seguenti percorsi, ad esempio, sono accettabili:

  • "c:\\MyDir\\MyFile.txt" in C#, o "c:\MyDir\MyFile.txt" in Visual Basic.

  • "c:\\MyDir" in C#, o "c:\MyDir" in Visual Basic.

  • "MyDir\\MySubdir" in C#, o "MyDir\MySubDir" in Visual Basic.

  • "\\\\MyServer\\MyShare" in C# o "MyServer\MyShare" in Visual Basic.

Per impostazione predefinita, l'accesso completo in lettura/scrittura alle nuove directory è consentito a tutti gli utenti.

Per un elenco di attività di I/O comuni, vedere Attività di I/O comuni.

Nell'esempio che segue vengono illustrati alcuni membri principali della classe DirectoryInfo.


using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        // Specify the directories you want to manipulate.
        DirectoryInfo di = new DirectoryInfo(@"c:\MyDir");
        try 
        {
            // Determine whether the directory exists.
            if (di.Exists) 
            {
                // Indicate that the directory already exists.
                Console.WriteLine("That path exists already.");
                return;
            }

            // Try to create the directory.
            di.Create();
            Console.WriteLine("The directory was created successfully.");

            // Delete the directory.
            di.Delete();
            Console.WriteLine("The directory was deleted successfully.");

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        } 
        finally {}
    }
}


Nell'esempio riportato di seguito viene dimostrato come copiare una directory e il suo contenuto.


using System;
using System.IO;

class CopyDir
{
    public static void CopyAll(DirectoryInfo source, DirectoryInfo target)
    {
        if (source.FullName.ToLower() == target.FullName.ToLower())
        {
            return;
        }

        // Check if the target directory exists, if not, create it.
        if (Directory.Exists(target.FullName) == false)
        {
            Directory.CreateDirectory(target.FullName);
        }

        // Copy each file into it's new directory.
        foreach (FileInfo fi in source.GetFiles())
        {
            Console.WriteLine(@"Copying {0}\{1}", target.FullName, fi.Name);
            fi.CopyTo(Path.Combine(target.ToString(), fi.Name), true);
        }

        // Copy each subdirectory using recursion.
        foreach (DirectoryInfo diSourceSubDir in source.GetDirectories())
        {
            DirectoryInfo nextTargetSubDir =
                target.CreateSubdirectory(diSourceSubDir.Name);
            CopyAll(diSourceSubDir, nextTargetSubDir);
        }
    }

    public static void Main()
    {
        string sourceDirectory = @"c:\sourceDirectory";
        string targetDirectory = @"c:\targetDirectory";

        DirectoryInfo diSource = new DirectoryInfo(sourceDirectory);
        DirectoryInfo diTarget = new DirectoryInfo(targetDirectory);

        CopyAll(diSource, diTarget);
    }

    // Output will vary based on the contents of the source directory.
}


.NET Framework

Supportato in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

.NET per applicazioni Windows Phone

Supportato in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Aggiunte alla community

Mostra:
© 2014 Microsoft