Compartir vía


Path.IsPathRooted Método

Definición

Devuelve un valor que indica si una ruta de acceso de archivo contiene una raíz.

Sobrecargas

IsPathRooted(String)

Devuelve un valor que indica si la cadena de ruta de acceso especificada contiene una raíz.

IsPathRooted(ReadOnlySpan<Char>)

Devuelve un valor que indica si el intervalo de caracteres especificado que representa una ruta de acceso de archivo contiene una raíz.

Comentarios

Una ruta de acceso raíz es la ruta de acceso de archivo que se fija en una unidad específica o una ruta unc; contrasta con una ruta de acceso relativa a la unidad actual o al directorio de trabajo. Por ejemplo, en los sistemas Windows, una ruta de acceso raíz comienza con una barra diagonal inversa (por ejemplo, "\Documents") o una letra de unidad y dos puntos (por ejemplo, "C:Documents").

Tenga en cuenta que las rutas de acceso con raíz pueden ser absolutas (es decir, completas) o relativas. Una ruta de acceso de raíz absoluta es una ruta de acceso completa desde la raíz de una unidad a un directorio específico. Una ruta de acceso con raíz relativa especifica una unidad, pero su ruta de acceso completa se resuelve en el directorio actual. En el siguiente ejemplo se ilustra la diferencia.

using System;
using System.IO;

class Program
{
    static void Main()
    {
        string relative1 = "C:Documents"; 
        ShowPathInfo(relative1);

        string relative2 = "/Documents";
        ShowPathInfo(relative2);

        string absolute = "C:/Documents";
        ShowPathInfo(absolute);
    }

    private static void ShowPathInfo(string path)
    {
        Console.WriteLine($"Path: {path}");
        Console.WriteLine($"   Rooted: {Path.IsPathRooted(path)}");
        Console.WriteLine($"   Fully qualified: {Path.IsPathFullyQualified(path)}");
        Console.WriteLine($"   Full path: {Path.GetFullPath(path)}");
        Console.WriteLine();
    }
}
// The example displays the following output when run on a Windows system:
//    Path: C:Documents
//        Rooted: True
//        Fully qualified: False
//        Full path: c:\Users\user1\Documents\projects\path\ispathrooted\Documents
//
//    Path: /Documents
//       Rooted: True
//       Fully qualified: False
//       Full path: c:\Documents
//
//    Path: C:/Documents
//       Rooted: True
//       Fully qualified: True
//       Full path: C:\Documents
Imports System.IO

Module Program
    Public Sub Main()
        Dim relative1 As String = "C:Documents" 
        ShowPathInfo(relative1)

        Dim relative2 As String = "C:Documents" 
        ShowPathInfo(relative2)

        Dim absolute As String = "C:/Documents"
        ShowPathInfo(absolute)
    End Sub

    Private Sub ShowPathInfo(filepath As String)
        Console.WriteLine($"Path: {filepath}")
        Console.WriteLine($"   Rooted: {Path.IsPathRooted(filepath)}")
        Console.WriteLine($"   Fully qualified: {Path.IsPathFullyQualified(filepath)}")
        Console.WriteLine($"   Full path: {Path.GetFullPath(filepath)}")
        Console.WriteLine()
    End Sub
End Module
' The example displays the following output when run on a Windows system:
'    Path: C:Documents
'        Rooted: True
'        Fully qualified: False
'        Full path: c:\Users\user1\Documents\projects\path\ispathrooted\Documents
'
'    Path: /Documents
'       Rooted: True
'       Fully qualified: False
'       Full path: c:\Documents
'
'    Path: C:/Documents
'       Rooted: True
'       Fully qualified: True
'       Full path: C:\Documents

IsPathRooted(String)

Source:
Path.Unix.cs
Source:
Path.Unix.cs
Source:
Path.Unix.cs

Devuelve un valor que indica si la cadena de ruta de acceso especificada contiene una raíz.

public:
 static bool IsPathRooted(System::String ^ path);
public static bool IsPathRooted (string path);
public static bool IsPathRooted (string? path);
static member IsPathRooted : string -> bool
Public Shared Function IsPathRooted (path As String) As Boolean

Parámetros

path
String

Ruta de acceso que se va a probar.

Devoluciones

true si path contiene una raíz; de lo contrario, false.

Excepciones

Versiones de .NET Framework y .NET Core anteriores a la 2.1: path contiene uno o varios de los caracteres no válidos definidos en GetInvalidPathChars().

Ejemplos

En el ejemplo siguiente se muestra cómo se puede usar el IsPathRooted método para probar tres cadenas.

String^ fileName = "C:\\mydir\\myfile.ext";
String^ UncPath = "\\\\myPc\\mydir\\myfile";
String^ relativePath = "mydir\\sudir\\";
bool result;
result = Path::IsPathRooted( fileName );
Console::WriteLine( "IsPathRooted('{0}') returns {1}", fileName, result.ToString() );
result = Path::IsPathRooted( UncPath );
Console::WriteLine( "IsPathRooted('{0}') returns {1}", UncPath, result.ToString() );
result = Path::IsPathRooted( relativePath );
Console::WriteLine( "IsPathRooted('{0}') returns {1}", relativePath, result.ToString() );

// This code produces output similar to the following:
//
// IsPathRooted('C:\mydir\myfile.ext') returns True
// IsPathRooted('\\myPc\mydir\myfile') returns True
// IsPathRooted('mydir\sudir\') returns False
string fileName = @"C:\mydir\myfile.ext";
string UncPath = @"\\myPc\mydir\myfile";
string relativePath = @"mydir\sudir\";
bool result;

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

result = Path.IsPathRooted(UncPath);
Console.WriteLine("IsPathRooted('{0}') returns {1}",
    UncPath, result);

result = Path.IsPathRooted(relativePath);
Console.WriteLine("IsPathRooted('{0}') returns {1}",
    relativePath, result);

// This code produces output similar to the following:
//
// IsPathRooted('C:\mydir\myfile.ext') returns True
// IsPathRooted('\\myPc\mydir\myfile') returns True
// IsPathRooted('mydir\sudir\') returns False
Dim fileName As String = "C:\mydir\myfile.ext"
Dim UncPath As String = "\\myPc\mydir\myfile"
Dim relativePath As String = "mydir\sudir\"
Dim result As Boolean

result = Path.IsPathRooted(fileName)
Console.WriteLine("IsPathRooted('{0}') returns {1}", fileName, result)

result = Path.IsPathRooted(UncPath)
Console.WriteLine("IsPathRooted('{0}') returns {1}", UncPath, result)

result = Path.IsPathRooted(relativePath)
Console.WriteLine("IsPathRooted('{0}') returns {1}", relativePath, result)

' This code produces output similar to the following:
'
' IsPathRooted('C:\mydir\myfile.ext') returns True
' IsPathRooted('\\myPc\mydir\myfile') returns True
' IsPathRooted('mydir\sudir\') returns False

Comentarios

El IsPathRooted método devuelve true si el primer carácter es un carácter separador de directorio como "\", o si la ruta de acceso comienza con una letra de unidad y dos puntos (:). Por ejemplo, devuelve true para path cadenas como "\\MyDir\MyFile.txt", "C:\MyDir" o "C:MyDir". false Devuelve para path cadenas como "MyDir".

Este método no comprueba que exista la ruta de acceso o el nombre de archivo.

Para obtener una lista de tareas de E/S comunes, consulte Tareas de E/S comunes.

Consulte también

Se aplica a

IsPathRooted(ReadOnlySpan<Char>)

Source:
Path.Unix.cs
Source:
Path.Unix.cs
Source:
Path.Unix.cs

Devuelve un valor que indica si el intervalo de caracteres especificado que representa una ruta de acceso de archivo contiene una raíz.

public:
 static bool IsPathRooted(ReadOnlySpan<char> path);
public static bool IsPathRooted (ReadOnlySpan<char> path);
static member IsPathRooted : ReadOnlySpan<char> -> bool
Public Shared Function IsPathRooted (path As ReadOnlySpan(Of Char)) As Boolean

Parámetros

path
ReadOnlySpan<Char>

Ruta de acceso que se va a probar.

Devoluciones

true si path contiene una raíz; de lo contrario, false.

Consulte también

Se aplica a