- .NET Framework : 4.7.2
- IDE : Visual Studio Community 2019
- OS : Windows 10 x64
- typesetting : Markdown
- blog : xinshaopu.blog.csdn.net
删除空文件夹
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
- [ IDE ] visualstudio.microsoft.com/zh-hans
- [.NET Core] dotnet.github.io
感恩曾经帮助过 心少朴 的人。
C#优秀,值得学习。.NET Core具有跨平台的能力,值得关注。
Console,WinForm,WPF,ASP.NET,Azure WebJob,WCF,Unity3d,UWP可以适当地了解。
注:此文是自学笔记所生,质量中下等,故要三思而后行。新手到此,不可照搬,应先研究其理象数,待能变通之时,自然跳出深坑。