DirectoryInfo - Clear
A DirectoryInfo extension method that clears all files and directories in this directory.
public static string DirectoryName = "Main Directory"; public static void Main() { CreateFilesAndDirectories(); var dirInfo = DirectoryName.ToDirectoryInfo(); //C# Extension Method - DirectoryInfo - GetFileSystemEntries var entries = dirInfo.GetFileSystemEntries(); Console.WriteLine("Data in current directory.\n\n"); foreach (var entry in entries) { Console.WriteLine(entry); } //C# Extension Method - DirectoryInfo - Clear dirInfo.Clear(); Console.WriteLine("\n\nData in current directory after calling Clear method.\n\n"); entries = dirInfo.GetFileSystemEntries(); foreach (var entry in entries) { Console.WriteLine(entry); } } private static void CreateFilesAndDirectories() { DirectoryName.ToDirectoryInfo().Create(); DirectoryName.ToDirectoryInfo().CreateSubdirectory("Entity Framework"); DirectoryName.ToDirectoryInfo().CreateSubdirectory(".Net Framework"); DirectoryName.ToDirectoryInfo().CreateSubdirectory("Java"); DirectoryName.ToDirectoryInfo().CreateSubdirectory("SQL"); string file1 = DirectoryName + "\\EntityFramework.txt"; string file2 = DirectoryName + "\\oldTest.txt"; file1.ToFileInfo().WriteAllText("EF text"); file2.ToFileInfo().WriteAllText("text"); }
View Source
using System; using System.IO; public static partial class Extensions { /// <summary> /// A DirectoryInfo extension method that clears all files and directories in this directory. /// </summary> /// <param name="obj">The obj to act on.</param> public static void Clear(this DirectoryInfo obj) { Array.ForEach(obj.GetFiles(), x => x.Delete()); Array.ForEach(obj.GetDirectories(), x => x.Delete(true)); } }