C# - Dateien löschen, die im Ordner mit filter

Bin ich mit SharpDevelop schreiben Sie ein C# - Programm (nicht die Konsole).
Ich will das löschen von Dateien in einem angegebenen Verzeichnis, sondern in der Lage sein, um Dateien AUSSCHLIEßEN, Anfang, Ende, oder die bestimmte Wörter.

Komplett löschen ALLE Dateien in einem Ordner, ich verwende diese :

private void clearFolder(string FolderName)
{
    DirectoryInfo dir = new DirectoryInfo(FolderName);

    foreach(FileInfo fi in dir.GetFiles())
    {
        fi.Delete();
    }

    foreach (DirectoryInfo di in dir.GetDirectories())
    {
        clearFolder(di.FullName);
        di.Delete();
    }
}

Ich benutze es wie

ClearFolder("NameOfFolderIWantToEmpty");

Gibt es eine Möglichkeit, dies zu ändern, so dass ich alle Dateien löschen und direcotries AUßER diese Dateien und Verzeichnisse mit bestimmten Wörtern?

Etwas wie :

CleanFolder(FolderToEmpty,ExcludeAllFileAndDirectoriesContaingThisPhrase);

so, dass wenn ich

CleanFolder("MyTestFolder","_blink");

Wäre es NICHT löschen Dateien und Verzeichnisse mit Namen wie

_blinkOne (file)

Test_blineGreen (file)

Test_blink5 (directory)

_blinkTwo (file within the Text_blink5 directory)

Folder_blink (empty directory)

aber WÜRDE das löschen von Dateien und Verzeichnissen wie

test (file)

test2 (directory)

test3_file (file within test2 directory)

test4 (empty directory)

Ich vermute, ich hätte zu Durchlaufen jeder Datei und jedem Verzeichnis ist, überprüfen Sie Sie ein zu einer Zeit, für die passenden filter und löschen Sie es, wenn es nicht passt, aber ich bin nicht sicher, wie das zu tun.

Etwas mit FileInfo() und DirectoryInfo() vielleicht?

Kann jemand helfen, indem Sie ein funktionierendes Beispiel?
(modifizierte version der oben genannten ist am günstigsten, aber wenn eine neue Methode erforderlich ist, solange es nicht erforderlich ist, eine außerhalb dll, ist OK.

Alle Antworten sind korrekt, wenn einer von Ihnen, half Sie, so wählen Sie als Antwort, damit niemand Zeit verschwenden Lesen Sie Ihre Frage erneut , da es bereits beantwortet wurde.
möglich, Duplikat der C# - Löschen von Dateien aus dem Verzeichnis, wenn der Dateiname enthält ein bestimmtes Wort

InformationsquelleAutor CopalFreak | 2013-03-21

Schreibe einen Kommentar