Path.GetFullPath Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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.
path
adalah 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
- Format jalur file pada sistem Windows
- I/O File dan Aliran
- Cara: Membaca Teks dari File
- Cara: Menulis Teks ke File
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.