Bagikan melalui


Path.GetDirectoryName Metode

Definisi

Overload

GetDirectoryName(String)

Mengembalikan informasi direktori untuk jalur yang ditentukan.

GetDirectoryName(ReadOnlySpan<Char>)

Mengembalikan informasi direktori untuk jalur yang ditentukan yang diwakili oleh rentang karakter.

GetDirectoryName(String)

Sumber:
Path.cs
Sumber:
Path.cs
Sumber:
Path.cs

Mengembalikan informasi direktori untuk jalur yang ditentukan.

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

Parameter

path
String

Jalur file atau direktori.

Mengembalikan

Informasi direktori untuk path, atau null jika path menunjukkan direktori akar atau null. Mengembalikan Empty jika path tidak berisi informasi direktori.

Pengecualian

Versi .NET Framework dan .NET Core yang lebih lama dari 2.1: Parameter path berisi karakter yang tidak valid, kosong, atau hanya berisi spasi kosong.

Parameter path lebih panjang dari panjang maksimum yang ditentukan sistem.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, IOException, sebagai gantinya.

Contoh

Contoh berikut menunjukkan penggunaan GetDirectoryName metode pada platform desktop berbasis Windows.

String^ filePath = "C:\\MyDir\\MySubDir\\myfile.ext";
String^ directoryName;
int i = 0;

while (filePath != nullptr)
{
    directoryName = Path::GetDirectoryName(filePath);
    Console::WriteLine("GetDirectoryName('{0}') returns '{1}'",
        filePath, directoryName);
    filePath = directoryName;
    if (i == 1)
    {
        filePath = directoryName + "\\";  // this will preserve the previous path
    }
    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 ''
*/
string filePath = @"C:\MyDir\MySubDir\myfile.ext";
string directoryName;
int i = 0;

while (filePath != null)
{
    directoryName = Path.GetDirectoryName(filePath);
    Console.WriteLine("GetDirectoryName('{0}') returns '{1}'",
        filePath, directoryName);
    filePath = directoryName;
    if (i == 1)
    {
        filePath = directoryName + @"\";  // this will preserve the previous path
    }
    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 ''
*/
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 ''

Keterangan

Dalam kebanyakan kasus, string yang dikembalikan oleh metode ini terdiri dari semua karakter di jalur hingga, tetapi tidak termasuk, karakter pemisah direktori terakhir. Karakter pemisah direktori dapat berupa DirectorySeparatorChar atau AltDirectorySeparatorChar. Jika jalur terdiri dari direktori akar, seperti "c:\", null dikembalikan.

Metode ini tidak mendukung jalur menggunakan "file:".

Karena jalur yang dikembalikan tidak menyertakan karakter pemisah direktori terakhir, meneruskan jalur yang dikembalikan kembali ke GetDirectoryName metode memotong satu tingkat folder per panggilan berikutnya pada jalur hasil. Misalnya, meneruskan jalur "C:\Directory\SubDirectory\test.txt" ke mengembalikan GetDirectoryName "C:\Directory\SubDirectory". Melewati jalur itu, "C:\Directory\SubDirectory", ke dalam GetDirectoryName mengembalikan "C:\Directory".

Untuk daftar tugas I/O umum, lihat Tugas I/O umum.

Lihat juga

Berlaku untuk

GetDirectoryName(ReadOnlySpan<Char>)

Sumber:
Path.cs
Sumber:
Path.cs
Sumber:
Path.cs

Mengembalikan informasi direktori untuk jalur yang ditentukan yang diwakili oleh rentang karakter.

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)

Parameter

path
ReadOnlySpan<Char>

Jalur untuk mengambil informasi direktori dari.

Mengembalikan

Informasi direktori untuk path, atau rentang kosong jika path adalah null, rentang kosong, atau root (seperti \, C:, atau \\server\share).

Keterangan

Tidak seperti kelebihan string, metode ini tidak menormalkan pemisah direktori.

Lihat juga

Berlaku untuk