Path.GetFileName 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
GetFileName(ReadOnlySpan<Char>) |
返回由只读字符范围表示的文件路径的文件名和扩展名。 |
GetFileName(String) |
返回指定路径字符串的文件名和扩展名。 |
GetFileName(ReadOnlySpan<Char>)
- Source:
- Path.cs
- Source:
- Path.cs
- Source:
- Path.cs
返回由只读字符范围表示的文件路径的文件名和扩展名。
public:
static ReadOnlySpan<char> GetFileName(ReadOnlySpan<char> path);
public static ReadOnlySpan<char> GetFileName (ReadOnlySpan<char> path);
static member GetFileName : ReadOnlySpan<char> -> ReadOnlySpan<char>
Public Shared Function GetFileName (path As ReadOnlySpan(Of Char)) As ReadOnlySpan(Of Char)
参数
- path
- ReadOnlySpan<Char>
一个只读范围,包含从中获取文件名和扩展名的路径。
返回
path
中最后的目录分隔符后的字符。
注解
返回的只读范围包含 中最后一个分隔符后面的路径的 path
字符。 如果 中的最后一个字符 path
是卷分隔符或目录分隔符,则 方法返回 ReadOnlySpan<T>.Empty。 如果 path
不包含分隔符,则 方法返回 path
。
另请参阅
适用于
GetFileName(String)
- Source:
- Path.cs
- Source:
- Path.cs
- Source:
- Path.cs
返回指定路径字符串的文件名和扩展名。
public:
static System::String ^ GetFileName(System::String ^ path);
public static string GetFileName (string path);
public static string? GetFileName (string? path);
static member GetFileName : string -> string
Public Shared Function GetFileName (path As String) As String
参数
- path
- String
从中获取文件名和扩展名的路径字符串。
返回
path
中最后的目录分隔符后的字符。 如果 path
的最后一个字符是目录或卷分隔符,则此方法返回 Empty。 如果 path
为 null
,则此方法返回 null
。
例外
.NET Framework 和 2.1 之前的 .NET Core 版本:path
包含 中GetInvalidPathChars()定义的一个或多个无效字符。
示例
以下示例演示方法在基于 Windows 的 GetFileName
桌面平台上的行为。
String^ fileName = "C:\\mydir\\myfile.ext";
String^ path = "C:\\mydir\\";
String^ result;
result = Path::GetFileName( fileName );
Console::WriteLine( "GetFileName('{0}') returns '{1}'", fileName, result );
result = Path::GetFileName( path );
Console::WriteLine( "GetFileName('{0}') returns '{1}'", path, result );
// This code produces output similar to the following:
//
// GetFileName('C:\mydir\myfile.ext') returns 'myfile.ext'
// GetFileName('C:\mydir\') returns ''
string fileName = @"C:\mydir\myfile.ext";
string path = @"C:\mydir\";
string result;
result = Path.GetFileName(fileName);
Console.WriteLine("GetFileName('{0}') returns '{1}'",
fileName, result);
result = Path.GetFileName(path);
Console.WriteLine("GetFileName('{0}') returns '{1}'",
path, result);
// This code produces output similar to the following:
//
// GetFileName('C:\mydir\myfile.ext') returns 'myfile.ext'
// GetFileName('C:\mydir\') returns ''
Dim fileName As String = "C:\mydir\myfile.ext"
Dim pathname As String = "C:\mydir\"
Dim result As String
result = Path.GetFileName(fileName)
Console.WriteLine("GetFileName('{0}') returns '{1}'", fileName, result)
result = Path.GetFileName(pathname)
Console.WriteLine("GetFileName('{0}') returns '{1}'", pathname, result)
' This code produces output similar to the following:
'
' GetFileName('C:\mydir\myfile.ext') returns 'myfile.ext'
' GetFileName('C:\mydir\') returns ''
注解
如果文件路径为 ,则返回的值为 null
null
。
用于确定文件名开头的分隔符为 DirectorySeparatorChar 和 AltDirectorySeparatorChar。
由于 \ 是 Unix 上的合法文件名, GetFileName
因此在基于 Unix 的平台下运行无法正确返回基于 Windows 的路径(如 C:\mydir\myfile.ext)的文件名,但在 GetFileName
基于 Windows 的平台下运行可以从基于 Unix 的路径 (如 /tmp/myfile.ext)正确返回文件名,因此方法的行为 GetFileName
在基于 Unix 和基于 Windows 的平台上并不完全相同。
有关常见 I/O 任务的列表,请参阅 常见 I/O 任务。