第一种最简单的C#删除指定文件方法:删除目录再创建相同目录 程序如下:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24. using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Collections; /// 〈 summary〉 /// 删除目录再创建相同目录 /// 〈 /summary〉 /// 〈 param name="strDir"〉目录地址 〈 /param〉 public static void deleteFiles( string strDir) { if (Directory.Exists(strDir)) { Directory.Delete(strDir, true); Directory.CreateDirectory(strDir); Console.WriteLine("文件删除成功!"); } else { Console.WriteLine("此目录不存在!"); } }
第二种C#删除指定文件方法:直接删除目录下的所有文件及文件夹(保留目录)
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13. /// 〈 summary〉 /// 直接删除目录下的所有文件及文件夹(保留目录) /// 〈 /summary〉 /// 〈 param name="strDir"〉目录地址 〈 /param〉 public static void deleteFiles3( string strDir) { if (Directory.Exists(strDir)) { string[] strDirs = Directory.GetDirectories(strDir); string[] strFiles =
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29. Directory.GetFiles(strDir); foreach (string strFile in strFiles) { File.Delete(strFile); } foreach (string strdir in strDirs) { Directory.Delete(strdir, true); } Console.WriteLine("删除成功!"); } else { Console.WriteLine("此目录不存在!"); } }
其实以上两种C#删除指定文件方法实现相同功能。
--------------------------------------------------------
我刚写的方法,测试过了,好用,希望对你有帮助
///
/// 删除给定路径下的给定后缀名的文件
///
/// 传入路径
/// 传入后缀名
/// 删除文件列表
private string[] DeleteSignedFile(string path, string suffixName) {
string deletefiles = ""; //记录删除的文件名称
DirectoryInfo di = new DirectoryInfo(path);
//遍历该路径下的所有文件
foreach (FileInfo fi in di.GetFiles())
{
string exname = fi.Name.Substring(fi.Name.LastIndexOf(".") +
1);//得到后缀名
//判断当前文件后缀名是否与给定后缀名一样
if (exname == suffixName)
{
File.Delete(path + "\\" + fi.Name);//删除当前文件 deletefiles += fi.Name + ",";//追加删除文件列表
}
}
if (deletefiles != "")
deletefiles = deletefiles.Substring(0, deletefiles.Length - 1); return deletefiles.Split(',');//以数组形式返回删除文件列表
}