C#基础 Directory Delete 删除空、非空的文件夹

    xiaoxiao2022-07-07  163

    .NET Framework : 4.7.2       IDE : Visual Studio Community 2019        OS : Windows 10 x64    typesetting : Markdown        blog : blog.csdn.net/yushaopu       github : github.com/GratefulHeartCoder

    删除空文件夹

    dir

    code

    using System; using System.IO; namespace ConsoleApp { class Program { static void Main(string[] args) { string dirPath = @"D:\ForCSharpTest"; // 这种方法删除的文件,不在回收站中。 // 感兴趣的同学,可以实现一下 回收站将程序删除的文件回收了 Directory.Delete(dirPath, false); Console.ReadKey(); } } }

    删除非文件夹

    dir

    code

    using System; using System.IO; namespace ConsoleApp { class Program { static void Main(string[] args) { string dirPath = @"D:\ForCSharpTest"; // 这种方法删除的文件,不在回收站中。 // 感兴趣的同学,可以实现一下 回收站将程序删除的文件回收了 // recursive: // 若要删除 path 中的目录、子目录和文件,则为 true;否则为 false。 Directory.Delete(dirPath, true); Console.ReadKey(); } } }

    more knowledge - 各种需要处理异常

    // // 摘要: // 删除指定的目录,并删除该目录中的所有子目录和文件(如果表示)。 // // 参数: // path: // 要删除的目录的名称。 // // recursive: // 若要删除 path 中的目录、子目录和文件,则为 true;否则为 false。 // // 异常: // T:System.IO.IOException: // 存在具有相同名称和 path 指定的位置的文件。 - 或 - path 指定的目录为只读,或者 recursive 的值为 false,且 path 不是空目录。 // - 或 - 该目录是应用程序的当前工作目录。 - 或 - 该目录包含一个只读文件。 - 或 - 另一个进程正在使用该目录。 // // T:System.UnauthorizedAccessException: // 调用方没有所要求的权限。 // // T:System.ArgumentException: // path 为长度为零的字符串,仅包含空格,或包含一个或多个无效字符。 你可以使用 System.IO.Path.GetInvalidPathChars 方法查询无效字符。 // // T:System.ArgumentNullException: // path 为 null。 // // T:System.IO.PathTooLongException: // 指定的路径和/或文件名超过了系统定义的最大长度。 例如,在基于 Windows 的平台上,路径必须少于 248 个字符,且文件名必须少于 260 个字符。 // // T:System.IO.DirectoryNotFoundException: // 不存在或找不到 path。 - 或 - 指定的路径无效(例如,它位于未映射的驱动器上)。 [SecuritySafeCritical] public static void Delete(string path, bool recursive);

    resource

    [文档] docs.microsoft.com/zh-cn/dotnet/csharp[规范] github.com/dotnet/docs/tree/master/docs/standard/design-guidelines[源码] referencesource.microsoft.com [平台] www.csdn.net[ IDE ] visualstudio.microsoft.com/zh-hans[.NET Core] dotnet.github.io


    感恩曾经帮助过 心少朴 的人。 C#优秀,值得学习。.NET Core具有跨平台的能力,值得关注。 Console,WinForm,WPF,ASP.NET,Azure WebJob,WCF,Unity3d,UWP可以适当地了解。 注:此文是自学笔记所生,质量中下等,故要三思而后行。新手到此,不可照搬,应先研究其理象数,待能变通之时,自然跳出深坑。

    最新回复(0)