ボタンをクリックすると、「C:\」ドライブ(およびすべてのサブディレクトリ、読み取り専用かどうか)をスキャンし、特定のファイル拡張子を持つすべてのファイルを削除する、私のアプリケーションの機能に取り組んでいます。どうすればこれを行うことができますか?リストまたは配列が使用されると確信しています...しかし、それは私が知っているすべてです。
.Net フレームワーク 2.0 のみでお願いします!
ボタンをクリックすると、「C:\」ドライブ(およびすべてのサブディレクトリ、読み取り専用かどうか)をスキャンし、特定のファイル拡張子を持つすべてのファイルを削除する、私のアプリケーションの機能に取り組んでいます。どうすればこれを行うことができますか?リストまたは配列が使用されると確信しています...しかし、それは私が知っているすべてです。
.Net フレームワーク 2.0 のみでお願いします!
次のコードが機能すると思います。
using System.IO;
...
string[] extensions = { "*.apa", "*.dip", "*.ep" }; // whatever extensions you care about
foreach (string ext in extensions)
{
foreach (string file in Directory.GetFiles(@"c:\", ext, SearchOption.AllDirectories))
{
File.SetAttributes(file, FileAttributes.Normal);
File.Delete(file);
}
}
これを試して:
DirectoryInfo directoryInfo = new DirectoryInfo(@"directory path");
foreach (var f in directoryInfo.GetFiles("*.*", SearchOption.AllDirectories))
{
f.Delete();
}
ディレクトリ ツリーをたどります。必要なコードはここで説明されています。
foreach (string filename in Directory.EnumerateFiles(@"C:\", "*.xxx", SearchOption.AllDirectories)
{
File.Delete(filename);
}
foreach (String file in Directory.GetFiles("c:\\","*.iddqd", SearchOption.AllDirectories) )
File.Delete (file);