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

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

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

if(Directory.Exists(yourPath))

{

   //获取指定路径下所有文件夹

   string[] folderPaths = Directory.GetDirectories(yourPath)

   

   foreach(string folderPath in folderPaths)

           Directory.Delete(folderPath, true)

   //获取指定路径下所有文件

   string[] filePaths = Directory.GetFiles(yourPath)

   foreach(string filePath in filePaths)

           File.Delete(filePath)

}

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

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

FileInfo file = new FileInfo(@"c:\dos\abc.txt")

if (file.Exists)

{

file.Delete()//删除单个文件

}

DirectoryInfo fold = new DirectoryInfo(@"c:\dos")

if (fold.Exists)

{

FileInfo[] files = fold.GetFiles("*.txt")

foreach (FileInfo f in files)//删除目录下*.txt

{

f.Delete()

}

}

其他的文件类型类似,希望能帮到你


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11727277.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存