CSharp 中的 Path 类

方法

API 作用 示例
Path.Combine() 连接多个路径字符串, 自动处理路径分隔符 Path.Combine("C:\Folder", "SubFolder", "file.txt") // C:\Folder\SubFolder\file.txt
Path.TryJoin() 尝试连接多个路径字符串, 返回 bool 表示是否成功 Path.TryJoin("C:\Folder", "file.txt", out string result) // true, result = "C:\Folder\file.txt"
Path.Join() 连接多个路径字符串, 不检查路径是否有效 Path.Join("C:\Folder", "SubFolder", "file.txt") // C:\Folder\SubFolder\file.txt
Path.ChangeExtension() 更改文件扩展名 Path.ChangeExtension("file.txt", ".jpg") // file.jpg
Path.GetExtension() 获取文件的扩展名 Path.GetExtension("file.txt") // .txt
Path.HasExtension() 判断路径是否包含扩展名 Path.HasExtension("file.txt") // true
Path.GetDirectoryName() 获取目录部分 (去除文件名) Path.GetDirectoryName("C:\Folder\file.txt") // C:\Folder
Path.GetFileName() 获取文件名 (包含扩展名) Path.GetFileName("C:\Folder\file.txt") // file.txt
Path.GetFileNameWithoutExtension() 获取文件名 (不含扩展名) Path.GetFileNameWithoutExtension("C:\Folder\file.txt") // file
Path.GetTempFileName() 生成一个唯一的临时文件路径 (会创建空文件) Path.GetTempFileName() // C:\Users...\AppData\Local\Temp\tmp1234.tmp
Path.GetRandomFileName() 生成一个随机文件名 (不会创建文件) Path.GetRandomFileName() // eg. "ax1b2c.tmp"
Path.GetFullPath() 获取绝对路径 Path.GetFullPath("file.txt") // C:\CurrentDirectory\file.txt
Path.GetTempPath() 获取系统的临时文件夹路径 Path.GetTempPath() // C:\Users...\AppData\Local\Temp\
Path.GetRelativePath() 获取相对路径 Path.GetRelativePath("C:\Folder", "C:\Folder\SubFolder\file.txt") // SubFolder\file.txt
Path.GetPathRoot() 获取路径的根目录部分 Path.GetPathRoot("C:\Folder\file.txt") // C:\
Path.IsPathRooted() 判断路径是否包含根目录 (绝对路径) Path.IsPathRooted("C:\Folder\file.txt") // true
Path.IsPathFullyQualified() 判断路径是否是完整路径 (不包含相对部分) Path.IsPathFullyQualified("C:\Folder\file.txt") // true
Path.GetInvalidPathChars() 获取路径中无效的字符数组 Path.GetInvalidPathChars()
Path.GetInvalidFileNameChars() 获取文件名中无效的字符数组 Path.GetInvalidFileNameChars()

属性

API 作用 示例
Path.PathSeparator 获取环境变量路径分隔符 (Windows ;Linux :) Path.PathSeparator // ;
Path.DirectorySeparatorChar 获取目录分隔符 (Windows \ Linux /) Path.DirectorySeparatorChar // \
Path.VolumeSeparatorChar 获取磁盘卷分隔符 (Windows : Linux 不存在) Path.VolumeSeparatorChar // :
Path.AltDirectorySeparatorChar 获取备用的目录分隔符 (Windows / 与 \ 等价) Path.AltDirectorySeparatorChar // /