c#+asp.net如何删除指定路径下的文件和文件夹

.net提供了一个静态类Directory 用以处理文件夹相关操作 要删除指定路径下的文件和文件夹的话 可以使用Directory.Exists方法判断该路径是否存在 如果存在使用Directory.GetDirectories获取该路径下所有子文件夹 通过遍历使用Directory.Delete方法删除  再通过Directory.GetFiles获取该路径下所有文件 遍历使用File.Delete方法删除 具体代码如下

 1 if(Directory.Exists(yourPath))
 2 {
 3    //获取指定路径下所有文件夹
 4    string[] folderPaths = Directory.GetDirectories(yourPath);
 5     
 6    foreach(string folderPath in folderPaths)
 7            Directory.Delete(folderPath, true);
 8    //获取指定路径下所有文件
 9    string[] filePaths = Directory.GetFiles(yourPath);
10  
11    foreach(string filePath in filePaths)
12            File.Delete(filePath);
13 }

如果你需要连你指定的文件夹一起删除 就简单的多 如下 

if(Directory.Exists(yourPath)){ 

Directory.Delete(yourPath,true);

 }

上述两例中的yourPath应为指定文件夹的路径 如: D:\test  第一例则会删除test文件夹下的所有子项 第二例则是test文件夹及其子项一起删除 需要注意的是Directory.Delete方法有两个重载 举例说明:

 Directory.Delete(yourPath); //如果yourPath有子项 则删除失败 抛出异常

Directory.Delete(yourPath,true); //第二个为bool类型参数 表示是否需要使用递归删除 

补充说明 如果只是需要删除文件 就使用File类 如下

 if(File.Exists(filePath))

File.Delete(filePath) 

上例中的filePath为文件的完整路径 如: C:\test\test.txt

posted @ 2017-12-06 16:54  醉酒饮天下  阅读(8509)  评论(0编辑  收藏  举报