From: konekoneko Date: Sun, 29 Jul 2012 01:52:36 +0000 (+0900) Subject: フォルダーの破壊処理を高速化した X-Git-Url: http://git.sourceforge.jp/view?p=completeeraser%2FCompleteEraser.git;a=commitdiff_plain;h=a13a2a86740f25f8fd2c1bbd4168ccf749510563 フォルダーの破壊処理を高速化した --- diff --git a/CompleteEraser/FileBreaker.cs b/CompleteEraser/FileBreaker.cs index 4c28dc2..901bd7b 100644 --- a/CompleteEraser/FileBreaker.cs +++ b/CompleteEraser/FileBreaker.cs @@ -85,22 +85,14 @@ namespace CompleteEraser public static void BreakFolder(string folder) { - IEnumerable files = Directory.EnumerateFiles(folder, "*.*", SearchOption.AllDirectories); + IEnumerable files = Directory.EnumerateFiles(folder, "*.*", SearchOption.TopDirectoryOnly); foreach (string file in files) BreakFile(file); IEnumerable dirs = Directory.EnumerateDirectories(folder, "*.*", SearchOption.TopDirectoryOnly); foreach (string dir in dirs) - BreakChildFolderName(dir); + BreakFolder(dir); string newName = RenameFolderName(folder); - Directory.Delete(newName, true); - } - - public static void BreakChildFolderName(string folder) - { - IEnumerable dirs = Directory.EnumerateDirectories(folder, "*.*", SearchOption.TopDirectoryOnly); - foreach (string dir in dirs) - BreakChildFolderName(dir); - RenameFolderName(folder); + Directory.Delete(newName); } public static string RenameFolderName(string dir)