Bagikan melalui


Path.GetFullPath Metode

Definisi

Overload

GetFullPath(String)

Mengembalikan jalur absolut untuk string jalur yang ditentukan.

GetFullPath(String, String)

Mengembalikan jalur absolut dari jalur relatif dan jalur dasar yang sepenuhnya memenuhi syarat.

GetFullPath(String)

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

Mengembalikan jalur absolut untuk string jalur yang ditentukan.

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

Parameter

path
String

File atau direktori untuk mendapatkan informasi jalur absolut.

Mengembalikan

Lokasi yang sepenuhnya memenuhi syarat dari path, seperti "C:\MyFile.txt".

Pengecualian

path adalah string panjang nol, hanya berisi spasi kosong pada sistem Windows, atau berisi satu atau beberapa karakter yang tidak valid yang ditentukan dalam GetInvalidPathChars().

-atau-

Sistem tidak dapat mengambil jalur absolut.

Pemanggil tidak memiliki izin yang diperlukan.

pathadalah null.

.NET Framework saja: path berisi titik dua (":") yang bukan bagian dari pengidentifikasi volume (misalnya, "c:\").

Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan sistem.

Contoh

Contoh berikut menunjukkan GetFullPath metode pada platform desktop berbasis Windows.

String^ fileName = "myfile.ext";
String^ path = "\\mydir\\";
String^ fullPath;
fullPath = Path::GetFullPath( path );
Console::WriteLine( "GetFullPath('{0}') returns '{1}'", path, fullPath );
fullPath = Path::GetFullPath( fileName );
Console::WriteLine( "GetFullPath('{0}') returns '{1}'", fileName, fullPath );

// Output is based on your current directory, except
// in the last case, where it is based on the root drive
// GetFullPath('mydir') returns 'C:\temp\Demo\mydir'
// GetFullPath('myfile.ext') returns 'C:\temp\Demo\myfile.ext'
// GetFullPath('\mydir') returns 'C:\mydir'
string fileName = "myfile.ext";
string path1 = @"mydir";
string path2 = @"\mydir";
string fullPath;

fullPath = Path.GetFullPath(path1);
Console.WriteLine("GetFullPath('{0}') returns '{1}'",
    path1, fullPath);

fullPath = Path.GetFullPath(fileName);
Console.WriteLine("GetFullPath('{0}') returns '{1}'",
    fileName, fullPath);

fullPath = Path.GetFullPath(path2);
Console.WriteLine("GetFullPath('{0}') returns '{1}'",
    path2, fullPath);

// Output is based on your current directory, except
// in the last case, where it is based on the root drive
// GetFullPath('mydir') returns 'C:\temp\Demo\mydir'
// GetFullPath('myfile.ext') returns 'C:\temp\Demo\myfile.ext'
// GetFullPath('\mydir') returns 'C:\mydir'
Dim fileName As string = "myfile.ext"
Dim path1 As string = "mydir"
Dim path2 As string = "\mydir"
Dim fullPath As string

fullPath = Path.GetFullPath(path1)
Console.WriteLine("GetFullPath('{0}') returns '{1}'", _
    path1, fullPath)

fullPath = Path.GetFullPath(fileName)
Console.WriteLine("GetFullPath('{0}') returns '{1}'", _
    fileName, fullPath)

fullPath = Path.GetFullPath(path2)
Console.WriteLine("GetFullPath('{0}') returns '{1}'", _
    path2, fullPath)

' Output is based on your current directory, except
' in the last case, where it is based on the root drive
' GetFullPath('mydir') returns 'C:\temp\Demo\mydir'
' GetFullPath('myfile.ext') returns 'C:\temp\Demo\myfile.ext'
' GetFullPath('\mydir') returns 'C:\mydir'

Keterangan

Jalur absolut mencakup semua informasi yang diperlukan untuk menemukan file atau direktori pada sistem.

File atau direktori yang ditentukan oleh path tidak diperlukan untuk ada. Misalnya, jika c:\temp\newdir adalah direktori saat ini, memanggil GetFullPath nama file seperti test.txt mengembalikan c:\temp\newdir\test.txt. File tidak perlu ada.

Penting

Jika path merupakan jalur relatif, kelebihan beban ini mengembalikan jalur yang sepenuhnya memenuhi syarat yang dapat didasarkan pada drive saat ini dan direktori saat ini. Drive saat ini dan direktori saat ini dapat berubah kapan saja saat aplikasi dijalankan. Akibatnya, jalur yang dikembalikan oleh kelebihan beban ini tidak dapat ditentukan terlebih dahulu. Untuk mengembalikan jalur deterministik, panggil GetFullPath(String, String) kelebihan beban. Anda juga dapat memanggil IsPathFullyQualified metode untuk menentukan apakah jalur sepenuhnya memenuhi syarat atau relatif dan oleh karena itu apakah panggilan ke GetFullPath diperlukan.

Namun, jika path memang ada, penelepon harus memiliki izin untuk mendapatkan informasi jalur untuk path. Perhatikan bahwa tidak seperti kebanyakan anggota Path kelas, metode ini mengakses sistem file.

Metode ini menggunakan direktori saat ini dan informasi volume saat ini untuk sepenuhnya memenuhi syarat path. Jika Anda menentukan nama file hanya di path, GetFullPath mengembalikan jalur yang sepenuhnya memenuhi syarat dari direktori saat ini.

Jika Anda meneruskan nama file pendek, nama file tersebut akan diperluas ke nama file yang panjang.

Jika jalur tidak berisi karakter yang signifikan, jalur tidak valid kecuali berisi satu atau beberapa karakter "." diikuti oleh sejumlah spasi; maka akan diurai sebagai "." atau "..".

.NET Core 1.1 dan versi yang lebih baru dan .NET Framework 4.6.2 dan versi yang lebih baru juga mendukung jalur yang menyertakan nama perangkat, seperti "\\?\C:\".

Untuk informasi selengkapnya tentang format jalur file di Windows, lihat Format jalur file pada sistem Windows. Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.

Lihat juga

Berlaku untuk

GetFullPath(String, String)

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

Mengembalikan jalur absolut dari jalur relatif dan jalur dasar yang sepenuhnya memenuhi syarat.

public:
 static System::String ^ GetFullPath(System::String ^ path, System::String ^ basePath);
public static string GetFullPath (string path, string basePath);
static member GetFullPath : string * string -> string
Public Shared Function GetFullPath (path As String, basePath As String) As String

Parameter

path
String

Jalur relatif untuk menggabungkan ke basePath.

basePath
String

Awal jalur yang sepenuhnya memenuhi syarat.

Mengembalikan

Jalur mutlak.

Pengecualian

path atau basePath adalah null.

basePath bukan jalur yang sepenuhnya memenuhi syarat.

-atau-

path atau basePath berisi satu atau beberapa karakter yang tidak valid yang ditentukan dalam GetInvalidPathChars().

Contoh

Contoh berikut mendefinisikan variabel, basePath, untuk mewakili direktori aplikasi saat ini. Kemudian meneruskannya ke GetFullPath metode untuk mendapatkan jalur yang sepenuhnya memenuhi syarat ke direktori data aplikasi.

using System;
using System.IO;

class Program
{
    static void Main()
    {
        string basePath = Environment.CurrentDirectory;
        string relativePath = "./data/output.xml";
 
        // Unexpectedly change the current directory.
        Environment.CurrentDirectory = "C:/Users/Public/Documents/";
        
        string fullPath = Path.GetFullPath(relativePath, basePath);
        Console.WriteLine($"Current directory:\n   {Environment.CurrentDirectory}");
        Console.WriteLine($"Fully qualified path:\n   {fullPath}");
    }
}
// The example displays the following output:
//   Current directory:
//      C:\Users\Public\Documents
//   Fully qualified path:
//      C:\Utilities\data\output.xml
Imports System.IO

Module Program
    Public Sub Main()
        Dim basePath As String = Environment.CurrentDirectory
        Dim relativePath As String = "./data/output.xml"
 
        ' Unexpectedly change the current directory.
        Environment.CurrentDirectory = "C:/Users/Public/Documents/"
        
        Dim fullPath As String = Path.GetFullPath(relativePath, basePath)
        Console.WriteLine($"Current directory:\n   {Environment.CurrentDirectory}")
        Console.WriteLine($"Fully qualified path:\n   {fullPath}")
    End Sub
End Module
' The example displays the following output:
'   Current directory:
'      C:\Users\Public\Documents
'   Fully qualified path:
'      C:\Utilities\data\output.xml

Keterangan

Jika path adalah jalur kosong, metode mengembalikan basePath. Jika path adalah jalur yang sepenuhnya memenuhi syarat, metode diteruskan path ke GetFullPath(String) metode dan mengembalikan hasilnya.

Gunakan metode ini untuk mengembalikan jalur deterministik berdasarkan volume tertentu dan direktori berakar saat Anda menggunakan jalur relatif. Menggunakan yang telah basePath ditentukan sebelumnya daripada yang didasarkan pada direktori drive saat ini menjaga terhadap jalur file yang tidak diinginkan yang disebabkan oleh perubahan tak terduga di drive dan direktori saat ini.

Berlaku untuk