共用方式為


Path.GetRelativePath(String, String) 方法

定義

回傳一條從一條路徑到另一條路徑的相對路徑。

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

參數

relativeTo
String

結果應該相對於來源路徑。 這條路徑始終被視為一個目錄。

path
String

目的地路徑。

傳回

相對路徑,或 path 是路徑不共享相同的根。

例外狀況

relativeTopathnull

relativeTopath 實際上是空的。

範例

以下程式碼說明如何呼叫該 GetRelativePath 方法。

// "C:/Program Files/Microsoft" relative to "C:/Program Files/Common Files" is "../Microsoft"
Console.WriteLine(Path.GetRelativePath("C:/Program Files/Common Files", "C:/Program Files/Microsoft"));
// "C:/Program Files/Microsoft" relative to "C:/Program Files/" is "Microsoft"
Console.WriteLine(Path.GetRelativePath("C:/Program Files/", "C:/Program Files/Microsoft"));

// This code produces output similar to the following:
//
// ../Microsoft
// Microsoft
' "C:/Program Files/Microsoft" relative to "C:/Program Files/Common Files" is "../Microsoft"
Console.WriteLine(Path.GetRelativePath("C:/Program Files/Common Files", "C:/Program Files/Microsoft"))
' "C:/Program Files/Microsoft" relative to "C:/Program Files/" is "Microsoft"
Console.WriteLine(Path.GetRelativePath("C:/Program Files/", "C:/Program Files/Microsoft"))

' This code produces output similar to the following:
'
' ../Microsoft
' Microsoft

備註

路徑的解析是透過呼叫 GetFullPath 方法再計算差異來解析。 此方法使用目前平台StringComparison.OrdinalIgnoreCase (Windows與macOS,Linux StringComparison.Ordinal )的預設檔案路徑比較。

適用於

另請參閱