C#检查文件目的地是否有效
是否有标准函数来检查指定的目录是否有效?
我问的原因是我收到一个用户的绝对目录字符串和文件名,我想通过检查位置来检查它是否有效。
对于文件
File.Exists(string)
对于目录
Directory.Exists(string)
注意:如果要重用对象,则应考虑使用FileInfo类与静态File类。 File类的静态方法每次都会进行不必要的安全检查。
FileInfo – DirectoryInfo – 文件 – 目录
FileInfo fi = new FileInfo(fName); if (fi.Exists) //Do stuff
要么
DirectoryInfo di = new DirectoryInfo(fName); if (di.Exists) //Do stuff
if(System.IO.File.Exists(fileOrDirectoryPath)) { //do stuff }
这应该做的伎俩!
如果它不能是新目录,您可以检查它是否存在。
您似乎也可以使用Path.GetInvalidPathChars来检查无效字符。
您可能还需要考虑有效路径本身并非100%有效。 如果用户提供C:\ windows \ System32或CD驱动器,操作系统在尝试写入时可能会抛出exception。
关于检查给定文件或目录是否存在,上一个答案是正确的。 Path类还包含许多用于validation或操作路径的各种组件的函数。