Path.IsPathFullyQualified メソッド

定義

ファイル パスが完全修飾されているかどうかを示す値を返します。Returns a value that indicates whether a file path is fully qualified.

オーバーロード

IsPathFullyQualified(ReadOnlySpan<Char>)

指定された文字範囲で表されたファイル パスが、特定のドライブまたは UNC パスに固定されているかどうかを示す値を返します。Returns a value that indicates whether the file path represented by the specified character span is fixed to a specific drive or UNC path.

IsPathFullyQualified(String)

指定されたファイル パスが特定のドライブまたは UNC パスに固定されているかどうかを示す値を返します。Returns a value that indicates whether the specified file path is fixed to a specific drive or UNC path.

注釈

IsPathFullyQualified メソッドのオーバーロードは、DirectorySeparatorCharAltDirectorySeparatorChar の両方の文字を使用するパスを処理します。The overloads of the IsPathFullyQualified method handle paths that use both the DirectorySeparatorChar and the AltDirectorySeparatorChar characters. 引数として渡されるパスに対して検証は実行されません。It does not perform any validation on the path that is passed to it as an argument. その結果、Uri は相対パスとして解釈され、falseを返します。As a result, URIs are interpreted as relative paths and return false.

完全修飾パス (IsPathFullyQualified メソッドによって示される) とルート化されたパス (IsPathRooted メソッドによって示される) の間には違いがあります。There is a difference between a fully qualified path (as indicated by the IsPathFullyQualified method) and a rooted path (as indicated by the IsPathRooted method). 完全修飾パスまたは絶対パスは、特定のドライブまたはデバイスからターゲットファイルまたはディレクトリへの正確なパスを常に定義し、現在のドライブまたは現在のディレクトリに依存しません。A fully qualified path or absolute path always defines an exact path from a particular drive or device to a target file or directory, and does not depend on the current drive or current directory. たとえば、Windows システムの場合、 c:/users/user1/documents/reports/2019/1 月/ハイライト。 .pdfは、c: ドライブのルートからターゲットファイルへの絶対パスを定義し、 .pdf を強調表示します。For example, on Windows systems, C:/users/user1/documents/reports/2019/january/highlights.pdf defines an absolute path from the root of the C: drive to the target file, highlights.pdf. ルートパスは、開始ドライブまたはルートディレクトリのいずれかを指定しますが、現在のディレクトリ (指定されたドライブがルートになっている場合) または現在のドライブ (ルートディレクトリがルートになっている場合) のいずれかに依存します。A rooted path specifies either a starting drive or root directory, but depends on either the current directory (if it is rooted by a specified drive) or the current drive (if it is rooted by the root directory). 次の例は、完全修飾パスとルート化されたパスの違いを示しています。The following example illustrates the difference between fully qualified paths and rooted paths.

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

指定された文字範囲で表されたファイル パスが、特定のドライブまたは UNC パスに固定されているかどうかを示す値を返します。Returns a value that indicates whether the file path represented by the specified character span is fixed to a specific drive or UNC path.

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>

ファイル パス。A file path.

戻り値

パスが特定のドライブまたは UNC パスに固定されている場合は true。パスが現在のドライブまたは作業ディレクトリを基準としている場合は falsetrue if the path is fixed to a specific drive or UNC path; false if the path is relative to the current drive or working directory.

こちらもご覧ください

IsPathFullyQualified(String)

指定されたファイル パスが特定のドライブまたは UNC パスに固定されているかどうかを示す値を返します。Returns a value that indicates whether the specified file path is fixed to a specific drive or UNC path.

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

ファイル パス。A file path.

戻り値

パスが特定のドライブまたは UNC パスに固定されている場合は true。パスが現在のドライブまたは作業ディレクトリを基準としている場合は falsetrue if the path is fixed to a specific drive or UNC path; false if the path is relative to the current drive or working directory.

例外

pathnull です。path is null.

注釈

このメソッドは、代替ディレクトリ区切り記号を使用するパスを処理します。This method handles paths that use the alternate directory separator. ルート化されたパス (IsPathRooted(String)) が相対的ではないと想定するのは、よくある間違いです。It's a frequent mistake to assume that rooted paths (IsPathRooted(String)) aren't relative. たとえば、"C:a" はドライブ相対で、C: の現在のディレクトリに対して解決されます (ルートはありますが、相対)。For example, "C:a" is drive relative, that is, it's resolved against the current directory for C: (rooted, but relative). "C:\ a" はルートであり、相対ではありません。つまり、現在のディレクトリがパスの変更に使用されることはありません。"C:\a" is rooted and not relative, that is, the current directory isn't used to modify the path.

こちらもご覧ください

適用対象