Language

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 。

例外

relativeTo または path が null。

relativeTo または path が実質的に空です。

例

次のコードは、 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 メソッドを呼び出すことによって解決されます。 このメソッドでは、現在のプラットフォームの既定のファイル パス比較を使用します (Windows と macOS の場合はStringComparison.OrdinalIgnoreCase 、Linux の場合は StringComparison.Ordinal )。

適用対象

こちらもご覧ください