Path.GetDirectoryName Método

Definição

Sobrecargas

Nome Description
GetDirectoryName(String)

Retorna as informações de diretório para o caminho especificado.

GetDirectoryName(ReadOnlySpan<Char>)

Retorna as informações de diretório para o caminho especificado representado por um intervalo de caracteres.

GetDirectoryName(String)

Origem:
Path.cs
Origem:
Path.cs
Origem:
Path.cs
Origem:
Path.cs
Origem:
Path.cs

Retorna as informações de diretório para o caminho especificado.

public:
 static System::String ^ GetDirectoryName(System::String ^ path);
public static string GetDirectoryName(string path);
public static string? GetDirectoryName(string? path);
static member GetDirectoryName : string -> string
Public Shared Function GetDirectoryName (path As String) As String

Parâmetros

path
String

O caminho de um arquivo ou diretório.

Retornos

Informações de diretório para path, ou null se path denota um diretório raiz ou é nulo. Retorna Empty se path não contiver informações de diretório.

Exceções

.NET Framework e .NET Core versões anteriores a 2.1: o parâmetro path contém caracteres inválidos, está vazio ou contém apenas espaços em branco.

O path parâmetro é maior que o comprimento máximo definido pelo sistema.

Exemplos

O exemplo a seguir demonstra o uso do método GetDirectoryName em uma plataforma de área de trabalho baseada em Windows.

string? filePath = @"C:\MyDir\MySubDir\myfile.ext";
string? directoryName;
int i = 0;

while (filePath != null)
{
    directoryName = Path.GetDirectoryName(filePath);
    Console.WriteLine($"GetDirectoryName(\"{filePath}\") returns {directoryName ?? "NULL"}");

    filePath = (i == 1)
        ? directoryName + @"\"  // this will preserve the previous path
        : directoryName;

    i++;
}
/*
This code produces the following output:

GetDirectoryName("C:\MyDir\MySubDir\myfile.ext") returns C:\MyDir\MySubDir
GetDirectoryName("C:\MyDir\MySubDir") returns C:\MyDir
GetDirectoryName("C:\MyDir\") returns C:\MyDir
GetDirectoryName("C:\MyDir") returns C:\
GetDirectoryName("C:\") returns NULL
*/
Dim filepath As String = "C:\MyDir\MySubDir\myfile.ext"
Dim directoryName As String
Dim i As Integer = 0

While filepath <> Nothing
    directoryName = Path.GetDirectoryName(filepath)
    Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", _
        filepath, directoryName)
    filepath = directoryName
    If i = 1 Then
       filepath = directoryName + "\"  ' this will preserve the previous path
    End If
    i = i + 1
End While

'This code produces the following output:
'
' GetDirectoryName('C:\MyDir\MySubDir\myfile.ext') returns 'C:\MyDir\MySubDir'
' GetDirectoryName('C:\MyDir\MySubDir') returns 'C:\MyDir'
' GetDirectoryName('C:\MyDir\') returns 'C:\MyDir'
' GetDirectoryName('C:\MyDir') returns 'C:\'
' GetDirectoryName('C:\') returns ''

Comentários

Na maioria dos casos, a cadeia de caracteres retornada por esse método consiste em todos os caracteres no caminho até, mas não incluindo, os caracteres do separador do último diretório. Um caractere separador de diretório pode ser ou DirectorySeparatorCharAltDirectorySeparatorChar. Se o caminho consistir em um diretório raiz, como "c:\", null será retornado.

Esse método não dá suporte a caminhos usando "file:".

Como o caminho retornado não inclui o último separador de diretório, passar o caminho retornado de volta para o GetDirectoryName método trunca um nível de pasta por chamada subsequente no caminho do resultado. Por exemplo, passar o caminho "C:\Directory\SubDirectory\test.txt" para GetDirectoryName retorna "C:\Directory\SubDirectory". Passando esse caminho, "C:\Directory\SubDirectory", retorna GetDirectoryName "C:\Directory".

Para obter uma lista de tarefas comuns de E/S, consulte tarefas comuns de E/S.

Confira também

Aplica-se a

GetDirectoryName(ReadOnlySpan<Char>)

Origem:
Path.cs
Origem:
Path.cs
Origem:
Path.cs
Origem:
Path.cs
Origem:
Path.cs

Retorna as informações de diretório para o caminho especificado representado por um intervalo de caracteres.

public:
 static ReadOnlySpan<char> GetDirectoryName(ReadOnlySpan<char> path);
public static ReadOnlySpan<char> GetDirectoryName(ReadOnlySpan<char> path);
static member GetDirectoryName : ReadOnlySpan<char> -> ReadOnlySpan<char>
Public Shared Function GetDirectoryName (path As ReadOnlySpan(Of Char)) As ReadOnlySpan(Of Char)

Parâmetros

path
ReadOnlySpan<Char>

O caminho do qual recuperar as informações do diretório.

Retornos

Informações de diretório para path, ou um intervalo vazio se path for null, um intervalo vazio ou uma raiz (como \, C:, ou \\server\share).

Comentários

Ao contrário da sobrecarga de cadeia de caracteres, esse método não normaliza separadores de diretório.

Confira também

Aplica-se a