Path.IsPathRooted Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, указывающее, содержит ли путь к файлу корень.
Перегрузки
| Имя | Описание |
|---|---|
| IsPathRooted(String) |
Возвращает значение, указывающее, содержит ли указанная строка пути корень. |
| IsPathRooted(ReadOnlySpan<Char>) |
Возвращает значение, указывающее, содержит ли указанный диапазон символов, представляющий путь к файлу, содержащий корень. |
Комментарии
Корневой путь — это путь к файлу, фиксированный для определенного диска или UNC-пути; он контрастирует с путем, относительным к текущему диску или рабочему каталогу. Например, в системах Windows корневой путь начинается с обратной косой черты (например, "\Documents") или буквы диска и двоеточия (например, "C:Documents").
Обратите внимание, что корневые пути могут быть абсолютными (то есть полными) или относительными. Абсолютный корневой путь — это полный путь от корневого диска к определенному каталогу. Относительный корневой путь указывает диск, но его полный путь разрешается в текущем каталоге. В следующем примере демонстрируется это различие.
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)
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
Возвращает значение, указывающее, содержит ли указанная строка пути корень.
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
Параметры
- path
- String
Путь для тестирования.
Возвращаемое значение
true Значение , если path содержит корень; в противном случае false.
Исключения
Версии .NET Framework и .NET Core старше 2.1: path содержат один или несколько недопустимых символов, определенных в GetInvalidPathChars().
Примеры
В следующем примере показано, как IsPathRooted можно использовать метод для тестирования трех строк.
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
Комментарии
Метод IsPathRooted возвращает true , если первый символ является символом разделителя каталогов, например "\", или если путь начинается с буквы диска и двоеточия (:). Например, возвращается true для path строк, таких как "\\MyDir\MyFile.txt", "C:\MyDir" или "C:MyDir". Возвращается false для path строк, таких как MyDir.
Этот метод не проверяет, существует ли путь или имя файла.
Список распространенных задач ввода-вывода см. в разделе Распространенные задачи ввода-вывода.
См. также раздел
- форматы пути File в системах Windows
- Файловый и потоковый ввод-вывод
- Практическое руководство. Чтение текста из файла
- Практическое руководство. Запись текста в файл
Применяется к
IsPathRooted(ReadOnlySpan<Char>)
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
- Исходный код:
- Path.Unix.cs
Возвращает значение, указывающее, содержит ли указанный диапазон символов, представляющий путь к файлу, содержащий корень.
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
Параметры
- path
- ReadOnlySpan<Char>
Путь для тестирования.
Возвращаемое значение
true Значение , если path содержит корень; в противном случае false.
См. также раздел
- форматы пути File в системах Windows