我正在使用C#(.NET 4.0)确定可移动驱动器是否为只读。我已经阅读了许多文章,这些文章详细说明了使用来自this page的以下代码确定目录是否为只读的过程:
var di = new DirectoryInfo(folderName);
if(di.Exists)
{
if (di.Attributes.HasFlag(FileAttributes.ReadOnly))
{
//IsReadOnly...
}
}
但是,我已经使用根目录尝试了这种方法,即使整个驱动器是只读的(我使用的是锁定的SD卡),我从来没有使用它//IsReadOnly...
。无法保证驱动器的内容(它可能是空的或有许多文件),因此测试任何子目录都是不可能的。我知道一个简单的测试是将一个小文件写入驱动器并捕获任何异常,但我更喜欢不同的方法。
有没有人知道这个问题的好方法?