我在运行时将文件保存在特定文件夹中。过了一段时间,我想以编程方式删除它们。如何删除特定文件夹中的所有文件?
答案 0 :(得分:134)
string[] filePaths = Directory.GetFiles(@"c:\MyDir\");
foreach (string filePath in filePaths)
File.Delete(filePath);
或者在一行中:
Array.ForEach(Directory.GetFiles(@"c:\MyDir\"), File.Delete);
答案 1 :(得分:15)
您可以通过FileInfo或DirectoryInfo:
来完成DirectoryInfo di = new DirectoryInfo("TempDir");
di.Delete(true);
然后重新创建目录
答案 2 :(得分:9)
System.IO.DirectoryInfo myDirInfo = new DirectoryInfo(myDirPath);
foreach (FileInfo file in myDirInfo.GetFiles())
{
file.Delete();
}
foreach (DirectoryInfo dir in myDirInfo.GetDirectories())
{
dir.Delete(true);
}
答案 3 :(得分:5)
添加以下命名空间
using System.IO;
并使用Directory
类来访问特定文件夹:
string[] fileNames = Directory.GetFiles(@"your directory path");
foreach (string fileName in fileNames)
File.Delete(fileName);
答案 4 :(得分:3)
试试这个:
foreach (string file in Directory.GetFiles(@"c:\directory\"))
File.Delete(file);
答案 5 :(得分:0)
您可以执行以下操作:
Directory directory = new DirectoryInfo(path);
List<FileInfo> fileInfos = directory.EnumerateFiles("*.*", SearchOption.AllDirectories).ToList();
foreach (FileInfo f in fileInfos)
File.Delete(f.FullName);