Partager via


DirectoryInfo(String) Constructeur

Définition

Initialise une nouvelle instance de la classe DirectoryInfo sur le chemin d'accès spécifié.

public:
 DirectoryInfo(System::String ^ path);
public DirectoryInfo (string path);
new System.IO.DirectoryInfo : string -> System.IO.DirectoryInfo
Public Sub New (path As String)

Paramètres

path
String

Chaîne spécifiant le chemin d'accès dans lequel créer DirectoryInfo.

Exceptions

path a la valeur null.

L'appelant n'a pas l'autorisation requise.

.NET Framework et .NET Core versions antérieures à 2.1 : path contient des caractères non valides tels que « , <, >ou |.

Le chemin et/ou le nom de fichier spécifiés dépassent la longueur maximale définie par le système.

Exemples

L’exemple suivant utilise ce constructeur pour créer le répertoire et le sous-répertoire spécifiés, et montre qu’un répertoire qui contient des sous-répertoires ne peut pas être supprimé.

using namespace System;
using namespace System::IO;
int main()
{
   
   // Specify the directories you want to manipulate.
   DirectoryInfo^ di1 = gcnew DirectoryInfo( "c:\\MyDir" );
   DirectoryInfo^ di2 = gcnew DirectoryInfo( "c:\\MyDir\\temp" );
   try
   {
      
      // Create the directories.
      di1->Create();
      di2->Create();
      
      // 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");
        DirectoryInfo di2 = new DirectoryInfo(@"c:\MyDir\temp");

        try
        {
            // Create the directories.
            di1.Create();
            di2.Create();

            // 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"
let di2 = DirectoryInfo @"c:\MyDir\temp"

try
    // Create the directories.
    di1.Create()
    di2.Create()

    // 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")
        Dim di2 As DirectoryInfo = New DirectoryInfo("c:\MyDir\temp")
        Try
            ' Create the directories.
            di1.Create()
            di2.Create()
            ' 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 e As Exception
            Console.WriteLine("The Delete operation failed as expected.")
        End Try
    End Sub
End Class

Remarques

Ce constructeur ne case activée pas si un répertoire existe. Ce constructeur est un espace réservé pour une chaîne utilisée pour accéder au disque dans les opérations suivantes.

Le path paramètre peut être un nom de fichier, y compris un fichier sur un partage UNC (Universal Naming Convention).

Attention

Lorsque vous compilez un ensemble de caractères avec un paramètre culturel particulier et que vous récupérez ces mêmes caractères avec un autre paramètre culturel, les caractères peuvent ne pas être interprétables et entraîner la levée d’une exception.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches courantes d’E/S.

S’applique à

Voir aussi