我正在使用可能在.NET或Mono上运行的C#代码中的文件和目录路径字符串。
我想确定给定的路径字符串是否可以是驱动器(无论当前系统上是否有映射到该路径的实际驱动器(。
例如,考虑字符串"m:"
。在某些环境(如 Windows(中,这表示驱动器,而在其他环境中,它可能是常用的目录名称。
除非我想对操作系统1进行硬编码检查,否则我如何才能知道 (w.l.o.g.("m:"
表示 Windows 中的驱动器(最好甚至发现该驱动器实际上称为"m"
(?
1:显然,这种检查注定要失败。
Directory.Exists(String( 方法与 Path.GetPathRoot 方法相结合怎么样?
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;
}