如何确定给定的路径字符串是否可以表示当前环境中的驱动器?

时间:2018-10-09 13:39:54

标签: c# .net path mono

我正在使用可能在.NET或Mono上运行的C#代码中的文件和目录路径字符串。

我想确定给定的路径字符串是否可以是驱动器(与当前系统上是否存在映射到该路径的实际驱动器无关)。

例如,考虑字符串"m:"。在某些环境(例如Windows)中,这表示驱动器,而在其他环境中,它可能是通常的目录名。

除非我要对操作系统的检查进行硬编码 1 ,否则如何找出{wlog)"m:"表示Windows中的驱动器(最好是Windows)甚至发现该驱动器实际上称为"m")?

1 :显然,这种检查注定会失败。

1 个答案:

答案 0 :(得分:0)

Directory.Exists(String) MethodPath.GetPathRoot Method结合使用怎么办?

string drive = Path.GetPathRoot(FileLocation.Text);   // e.g. K:\

if (!Directory.Exists(drive))
{
     MessageBox.Show("Drive " + drive + " not found or inaccessible", 
                     "Error", MessageBoxButton.OK);
     return;
}
相关问题