C#高效删除目录中的文件和文件夹
在处理目录时,经常需要删除目录中的所有内容,同时保留根目录本身。 这可以通过C#的System.IO.DirectoryInfo类高效实现。
方法:
要删除给定目录中的文件和子目录,请遵循以下步骤:
创建DirectoryInfo对象: 为目标目录创建一个DirectoryInfo对象。
<code class="language-csharp">System.IO.DirectoryInfo di = new DirectoryInfo("YourPath");</code>
删除文件: 使用GetFiles()或EnumerateFiles()迭代目录中的文件。
<code class="language-csharp">foreach (FileInfo file in di.GetFiles()) { file.Delete(); }</code>
对于大型目录,EnumerateFiles()更高效,因为它允许在将整个集合加载到内存之前进行枚举。
删除目录: 同样,使用GetDirectories()或EnumerateDirectories()迭代子目录。
<code class="language-csharp">foreach (DirectoryInfo dir in di.GetDirectories()) { dir.Delete(true); }</code>
递归删除子目录: 将true参数设置为Delete()可确保删除所有子目录及其中的文件。
以上是如何在 C# 中高效删除目录中的文件和子文件夹,同时保留根目录?的详细内容。更多信息请关注PHP中文网其他相关文章!