Как удалить всю папку и все ее содержимое, включая файлы только для чтения - PullRequest
1 голос
/ 15 июля 2010

В настоящее время я использую этот код для удаления папки и ее содержимого:

string tempFolder = System.Environment.GetEnvironmentVariable("HomeDrive");
System.IO.Directory.Delete(tempFolder + "\\" + "Test", true);

, и он работает ОТЛИЧНО, но он удалит папку и ее содержимое, но НЕ удалит файлы только для чтения.Итак, как с помощью таргетированной среды C # 2.0 я могу это сделать?

1 Ответ

5 голосов
/ 15 июля 2010

Вы можете удалить атрибут «только для чтения» из файлов, используя следующий код:

string[] allFileNames = System.IO.Directory.GetFiles(tempFolder, "*.*", System.IO.SearchOption.AllDirectories);
foreach (string filename in allFileNames) {
    FileAttributes attr = File.GetAttributes(filename);
    File.SetAttributes(filename, attr & ~FileAttributes.ReadOnly);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...