Поделиться через


Path.IsPathFullyQualified Метод

Определение

Возвращает значение, которое показывает, является ли путь к файлу полным.

Перегрузки

IsPathFullyQualified(ReadOnlySpan<Char>)

Возвращает значение, которое показывает, является ли путь к файлу, представленный указанным диапазоном символов, фиксированным для определенного диска или UNC-пути.

IsPathFullyQualified(String)

Возвращает значение, которое показывает, является ли указанный путь к файлу фиксированным для определенного диска или UNC-пути.

Комментарии

Перегрузки IsPathFullyQualified метода обрабатывают пути, использующие символы DirectorySeparatorChar и AltDirectorySeparatorChar . Он не выполняет проверку пути, передаваемого ему в качестве аргумента. В результате URI интерпретируются как относительные пути и возвращают false.

Существует разница между полным путем (как указано в методе IsPathFullyQualified ) и корневым путем (как указано в методе IsPathRooted ). Полный или абсолютный путь всегда определяет точный путь от определенного диска или устройства к целевому файлу или каталогу и не зависит от текущего диска или текущего каталога. Например, в системах Windows C:/users/user1/documents/reports/2019/january/highlights.pdf определяет абсолютный путь от корня диска C: к целевому файлу highlights.pdf. Корневой путь указывает начальный диск или корневой каталог, но зависит от текущего каталога (если он является корневым) или текущего диска (если он является корневым каталогом). В следующем примере показана разница между полными и корневыми путями.

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

IsPathFullyQualified(ReadOnlySpan<Char>)

Исходный код:
Path.cs
Исходный код:
Path.cs
Исходный код:
Path.cs

Возвращает значение, которое показывает, является ли путь к файлу, представленный указанным диапазоном символов, фиксированным для определенного диска или UNC-пути.

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

Параметры

path
ReadOnlySpan<Char>

Путь к файлу.

Возвращаемое значение

Значение true, если путь привязан к определенному диску или UNC-пути; false — если путь задается относительно текущего диска или рабочей папки.

См. также раздел

Применяется к

IsPathFullyQualified(String)

Исходный код:
Path.cs
Исходный код:
Path.cs
Исходный код:
Path.cs

Возвращает значение, которое показывает, является ли указанный путь к файлу фиксированным для определенного диска или UNC-пути.

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

Параметры

path
String

Путь к файлу.

Возвращаемое значение

Значение true, если путь привязан к определенному диску или UNC-пути; false — если путь задается относительно текущего диска или рабочей папки.

Исключения

path имеет значение null.

Комментарии

Этот метод обрабатывает пути, использующие альтернативный разделитель каталогов. Часто ошибочно предположить, что корневые пути (IsPathRooted(String)) не являются относительными. Например, "C:a" является относительным диском, то есть разрешается в текущем каталоге для C: (корневой, но относительный). "C:\a" является корневым и не относительным, то есть текущий каталог не используется для изменения пути.

См. также раздел

Применяется к