Path.IsPathRooted Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- Formatos de ruta de acceso de archivo en los sistemas Windows
- E/S de archivos y secuencias
- Cómo: Leer texto de un archivo
- Cómo: Escribir texto en un archivo
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
.