0
点赞
收藏
分享

微信扫一扫

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


  • .NET Framework : 4.7.2
  •        IDE : Visual Studio Community 2019
  •         OS : Windows 10 x64
  •     typesetting : Markdown
  •         blog : xinshaopu.blog.csdn.net

删除空文件夹

dir

C#基础 Directory Delete 删除空、非空的文件夹_子目录

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

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

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
  • [ IDE ] visualstudio.microsoft.com/zh-hans
  • [.NET Core] dotnet.github.io

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

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


举报

相关推荐

0 条评论