Compartir vía


Path.GetRelativePath(String, String) Método

Definición

Devuelve una ruta de acceso relativa a partir de una ruta de acceso a otra.

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

Parámetros

relativeTo
String

La ruta de acceso de origen a la que el resultado debe ser relativo. Esta ruta de acceso siempre se considera un directorio.

path
String

La ruta de acceso de destino.

Devoluciones

La ruta de acceso relativa, o path si las rutas de acceso no comparten la misma raíz.

Excepciones

relativeTo o path es null.

relativeTo o path está vacío de forma efectiva.

Ejemplos

El siguiente código muestra cómo llamar al método 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

Comentarios

Las rutas de acceso se resuelven llamando al GetFullPath método antes de calcular la diferencia. El método usa la comparación de ruta de acceso de archivo predeterminada para la plataforma actual (StringComparison.OrdinalIgnoreCase para Windows y MacOs, StringComparison.Ordinal para Linux.

Se aplica a

Consulte también