Udostępnij za pośrednictwem


Path.IsPathFullyQualified Metoda

Definicja

Zwraca wartość wskazującą, czy ścieżka pliku jest w pełni kwalifikowana.

Przeciążenia

IsPathFullyQualified(ReadOnlySpan<Char>)

Zwraca wartość wskazującą, czy ścieżka pliku reprezentowana przez określony zakres znaków jest stała dla określonego dysku lub ścieżki UNC.

IsPathFullyQualified(String)

Zwraca wartość wskazującą, czy określona ścieżka pliku jest stała dla określonego dysku, czy ścieżki UNC.

Uwagi

Przeciążenia IsPathFullyQualified metody obsługują ścieżki używające DirectorySeparatorChar znaków i AltDirectorySeparatorChar . Nie wykonuje żadnej walidacji na ścieżce, która jest do niej przekazywana jako argument. W rezultacie identyfikatory URI są interpretowane jako ścieżki względne i zwracają wartość false.

Istnieje różnica między w pełni kwalifikowaną ścieżką (wskazaną przez IsPathFullyQualified metodę) i ścieżką rooted (wskazaną przez metodę IsPathRooted ). W pełni kwalifikowana ścieżka lub ścieżka bezwzględna zawsze definiuje dokładną ścieżkę z określonego dysku lub urządzenia do pliku lub katalogu docelowego i nie zależy od bieżącego dysku lub bieżącego katalogu. Na przykład w systemach Windows C:/users/user1/documents/reports/2019/january/highlights.pdf definiuje ścieżkę bezwzględną z katalogu głównego dysku C: do pliku docelowego, highlights.pdf. Ścieżka rooted określa dysk początkowy lub katalog główny, ale zależy od bieżącego katalogu (jeśli jest rooted przez określony dysk) lub bieżący dysk (jeśli jest rooted przez katalog główny). Poniższy przykład ilustruje różnicę między w pełni kwalifikowanymi ścieżkami i ścieżkami rooted.

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>)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Zwraca wartość wskazującą, czy ścieżka pliku reprezentowana przez określony zakres znaków jest stała dla określonego dysku lub ścieżki 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

Parametry

path
ReadOnlySpan<Char>

Ścieżka pliku.

Zwraca

true jeśli ścieżka jest stała do określonego dysku lub ścieżki UNC; false jeśli ścieżka jest względna względem bieżącego dysku lub katalogu roboczego.

Zobacz też

Dotyczy

IsPathFullyQualified(String)

Źródło:
Path.cs
Źródło:
Path.cs
Źródło:
Path.cs

Zwraca wartość wskazującą, czy określona ścieżka pliku jest stała dla określonego dysku, czy ścieżki 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

Parametry

path
String

Ścieżka pliku.

Zwraca

true jeśli ścieżka jest stała do określonego dysku lub ścieżki UNC; false jeśli ścieżka jest względna względem bieżącego dysku lub katalogu roboczego.

Wyjątki

path to null.

Uwagi

Ta metoda obsługuje ścieżki używające separatora katalogu alternatywnego. Częsty błąd polega na założeniu, że ścieżki rooted (IsPathRooted(String)) nie są względne. Na przykład "C:a" jest względny dysk, czyli jest rozpoznawany względem bieżącego katalogu C: (rooted, ale względny). "C:\a" jest rooted, a nie względny, czyli bieżący katalog nie jest używany do modyfikowania ścieżki.

Zobacz też

Dotyczy