1

次のコードを使用して書き込み保護フォルダーを削除し、削除できるようにします。しかし、うまくいきません。

File.SetAttributes(@"F:\File", FileAttributes.Normal); 
File.Delete(@"F:\File");

書き込み保護を解除するにはどうすればよいですか?

ディスクからファイル保護を削除できる場合は、それを行うためのコードをいくつか教えてください。

どんな助けでも大歓迎です

前もって感謝します

4

1 に答える 1

1

フォルダとファイルには違いがあります。これにより、読み取り専用属性が削除され、フォルダーが削除されます。

var di = new DirectoryInfo(@"F:\File");
di.Attributes &= ~FileAttributes.ReadOnly;
di.Delete(true);

編集

USB ドライブをフォーマットしています。記事を読むことができます。

public static bool FormatDrive(string driveLetter, 
    string fileSystem = "NTFS", bool quickFormat=true, 
    int clusterSize = 8192, string label = "", bool enableCompression = false )
{
   if (driveLetter.Length != 2 || driveLetter[1] != ':'|| !char.IsLetter(driveLetter[0]))
      return false;

   //query and format given drive         
   ManagementObjectSearcher searcher = new ManagementObjectSearcher
    (@"select * from Win32_Volume WHERE DriveLetter = '" + driveLetter + "'");
   foreach (ManagementObject vi in searcher.Get())
   {
      vi.InvokeMethod("Format", new object[] 
    { fileSystem, quickFormat,clusterSize, label, enableCompression });
   }

   return true;
} 

次のようにドライブ文字を配置する必要があります。"F:"

于 2015-05-23T07:34:42.760 に答える