Path.GetPathRoot 方法

定义

重载

GetPathRoot(String)

从指定字符串包含的路径中获取根目录信息。

GetPathRoot(ReadOnlySpan<Char>)

从指定字符范围包含的路径中获取根目录信息。

GetPathRoot(String)

Source:
Path.Unix.cs
Source:
Path.Unix.cs
Source:
Path.Unix.cs

从指定字符串包含的路径中获取根目录信息。

public:
 static System::String ^ GetPathRoot(System::String ^ path);
public static string GetPathRoot (string path);
public static string? GetPathRoot (string? path);
static member GetPathRoot : string -> string
Public Shared Function GetPathRoot (path As String) As String

参数

path
String

一个字符串,包含要从中获取根目录信息的路径。

返回

如果为根路径,则为 path 的根目录。

如果 path 不包含根目录信息,则为 Empty

如果 pathnull 或实际上为空,则为 null

例外

.NET Framework 和 .NET Core 版本早于 2.1: path 包含 中GetInvalidPathChars()定义的一个或多个无效字符。

仅限 .NET Framework:Empty 已传递给 path

示例

下面的示例演示如何使用 GetPathRoot 方法。

String^ path = "\\mydir\\";
String^ fileName = "myfile.ext";
String^ fullPath = "C:\\mydir\\myfile.ext";
String^ pathRoot;
pathRoot = Path::GetPathRoot( path );
Console::WriteLine( "GetPathRoot('{0}') returns '{1}'", path, pathRoot );
pathRoot = Path::GetPathRoot( fileName );
Console::WriteLine( "GetPathRoot('{0}') returns '{1}'", fileName, pathRoot );
pathRoot = Path::GetPathRoot( fullPath );
Console::WriteLine( "GetPathRoot('{0}') returns '{1}'", fullPath, pathRoot );

// This code produces output similar to the following:
//
// GetPathRoot('\mydir\') returns '\'
// GetPathRoot('myfile.ext') returns ''
// GetPathRoot('C:\mydir\myfile.ext') returns 'C:\'
string path = @"\mydir\";
string fileName = "myfile.ext";
string fullPath = @"C:\mydir\myfile.ext";
string pathRoot;

pathRoot = Path.GetPathRoot(path);
Console.WriteLine("GetPathRoot('{0}') returns '{1}'",
    path, pathRoot);

pathRoot = Path.GetPathRoot(fileName);
Console.WriteLine("GetPathRoot('{0}') returns '{1}'",
    fileName, pathRoot);

pathRoot = Path.GetPathRoot(fullPath);
Console.WriteLine("GetPathRoot('{0}') returns '{1}'",
    fullPath, pathRoot);

// This code produces output similar to the following:
//
// GetPathRoot('\mydir\') returns '\'
// GetPathRoot('myfile.ext') returns ''
// GetPathRoot('C:\mydir\myfile.ext') returns 'C:\'
Dim pathname As String = "\mydir\"
Dim fileName As String = "myfile.ext"
Dim fullPath As String = "C:\mydir\myfile.ext"
Dim pathnameRoot As String

pathnameRoot = Path.GetPathRoot(pathname)
Console.WriteLine("GetPathRoot('{0}') returns '{1}'", pathname, pathnameRoot)

pathnameRoot = Path.GetPathRoot(fileName)
Console.WriteLine("GetPathRoot('{0}') returns '{1}'", fileName, pathnameRoot)

pathnameRoot = Path.GetPathRoot(fullPath)
Console.WriteLine("GetPathRoot('{0}') returns '{1}'", fullPath, pathnameRoot)

' This code produces output similar to the following:
'
' GetPathRoot('\mydir\') returns '\'
' GetPathRoot('myfile.ext') returns ''
' GetPathRoot('C:\mydir\myfile.ext') returns 'C:\'

注解

此方法不验证路径或文件是否存在。

此方法将规范化目录分隔符。

如果:如果,字符串为“有效为空”:

  • 在 Windows 中,对此字符串调用 IsEmptytrue返回 ,或者其所有字符都是空格 (“) ”。
  • 在 Unix 中,对此字符串调用 IsNullOrEmptytrue返回 。

此方法返回的字符串的可能模式如下所示:

  • null (path 为 null 或) 为空字符串。

  • 空字符串 (path 指定当前驱动器或卷) 上的相对路径。

  • “/” (Unix: path 指定当前驱动器) 上的绝对路径。

  • “X:” (Windows: path 指定驱动器上的相对路径,其中 X 表示驱动器或卷号) 。

  • “X:\” (Windows: path 指定给定驱动器) 上的绝对路径。

  • Windows (“\\ComputerName\SharedFolder”:) UNC 路径。

  • “\?\C:” (Windows:一个 DOS 设备路径,在 .NET Core 1.1 及更高版本中受支持,.NET Framework 4.6.2 及更高版本) 。

有关 Windows 上的文件路径的详细信息,请参阅 Windows 系统上的文件路径格式。 有关常见 I/O 任务的列表,请参阅 常见 I/O 任务

另请参阅

适用于

GetPathRoot(ReadOnlySpan<Char>)

Source:
Path.Unix.cs
Source:
Path.Unix.cs
Source:
Path.Unix.cs

从指定字符范围包含的路径中获取根目录信息。

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

参数

path
ReadOnlySpan<Char>

字符的只读范围,包含要从中获取根目录信息的路径。

返回

字符的只读范围,包含 path 的根目录。

注解

此方法不验证路径或文件是否存在。

与字符串重载不同,此方法不规范化目录分隔符。

ReadOnlySpan<System.Char>如果为 ,则 为“有效为空”:

此方法返回的只读字符范围可能的模式如下所示:

  • ReadOnlySpan<T>.Empty (pathReadOnlySpan<T>.Empty

  • ReadOnlySpan<T>.Empty (path 当前驱动器或卷) 上指定相对路径。

  • “/” (Unix: path 指定当前驱动器) 上的绝对路径。

  • “X:” (Windows: path 指定驱动器上的相对路径,其中 X 表示驱动器或卷号) 。

  • “X:\” (Windows: path 指定给定驱动器) 上的绝对路径。

  • Windows (“\\ComputerName\SharedFolder”:) UNC 路径。

  • “\?\C:” (Windows:一个 DOS 设备路径,在 .NET Core 1.1 及更高版本中受支持,.NET Framework 4.6.2 及更高版本) 。

有关 Windows 上的文件路径的详细信息,请参阅 Windows 系统上的文件路径格式。 有关常见 I/O 任务的列表,请参阅 常见 I/O 任务

另请参阅

适用于