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