.NET でディレクトリの削除が失敗したりしなかったりする
小ネタ
Windows 10 Pro 1803、.NET Framework 4.7.2 でうごかしてます
準備
Visual Studioで新規のコンソールアプリを作って
class Program { static void Main(string[] args) { Directory.Delete(@"F:\Test", true); } }
完成
FドライブはSEAGATE ST2000DM006がそのまま割り当てられていて
Testフォルダ内にはいろんなフォルダやファイルが合計100MBくらいはいっています
実行!
空じゃないと言われたので見てみました
「このフォルダーは空です。」
?
これ毎回失敗するわけじゃないんですが失敗しないと思い込んでいると私のように痛い目をみます
ということでググりました
でてきました
安定のstackoverflow先生、さすがです
結構前の情報なのでいろんな環境で起きるんですかね?どうなんですかね?
そこにおすすめの解決法もありましたよ
static void Main(string[] args) { try { Directory.Delete(@"F:\Test", true); } catch (IOException) { Thread.Sleep(0); Directory.Delete(@"F:\Test", true); } }