C# 删除指定目录下的所有文件及文件夹

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{

    class Program
    {

        #region 直接删除指定目录下的所有文件及文件夹(保留目录)
public static void DeleteDir(string file) { try { //去除文件夹和子文件的只读属性 //去除文件夹的只读属性 System.IO.DirectoryInfo fileInfo = new DirectoryInfo(file); fileInfo.Attributes = FileAttributes.Normal & FileAttributes.Directory; //去除文件的只读属性 System.IO.File.SetAttributes(file, System.IO.FileAttributes.Normal); //判断文件夹是否还存在 if (Directory.Exists(file)) { foreach (string f in Directory.GetFileSystemEntries(file)) { if (File.Exists(f)) { //如果有子文件删除文件 File.Delete(f); Console.WriteLine(f); } else { //循环递归删除子文件夹 DeleteDir(f); } } //删除空文件夹 Directory.Delete(file);                     Console.WriteLine(file); } } catch (Exception ex) // 异常处理 { Console.WriteLine(ex.Message.ToString());// 异常信息 } } #endregion static void Main(string[] args) { DeleteDir(@"D:zhidiangit3.0"); Console.ReadKey(); } } }
原文地址:https://www.cnblogs.com/chxl800/p/10498399.html