DirectoryInfo(String) Konstruktor
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Inicjuje DirectoryInfo nowe wystąpienie klasy w określonej ścieżce.
public:
DirectoryInfo(System::String ^ path);
public DirectoryInfo (string path);
new System.IO.DirectoryInfo : string -> System.IO.DirectoryInfo
Public Sub New (path As String)
Parametry
- path
- String
Ciąg określający ścieżkę, w której ma zostać utworzony element DirectoryInfo
.
Wyjątki
path
to null
.
Obiekt wywołujący nie posiada wymaganych uprawnień.
.NET Framework i .NET Core w wersjach starszych niż 2.1: path
zawiera nieprawidłowe znaki, takie jak ", <, >lub |.
Podana ścieżka, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system.
Przykłady
W poniższym przykładzie użyto tego konstruktora do utworzenia określonego katalogu i podkatalogu oraz pokazano, że nie można usunąć katalogu zawierającego podkatalogi.
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
Uwagi
Ten konstruktor nie sprawdza, czy istnieje katalog. Ten konstruktor jest symbolem zastępczym ciągu, który jest używany do uzyskiwania dostępu do dysku w kolejnych operacjach.
Parametr path
może być nazwą pliku, w tym plikiem w udziale UNIVERSAL Naming Convention (UNC).
Przestroga
Podczas kompilowania zestawu znaków z określonym ustawieniem kulturowym i pobierania tych samych znaków z innym ustawieniem kulturowym znaki mogą nie być interpretowane i mogą powodować zgłoszenie wyjątku.
Aby uzyskać listę typowych zadań we/wy, zobacz Typowe zadania we/wy.