-
2018-08-08 15:23:26
public static void DelectDir(string srcPath) { try { DirectoryInfo dir = new DirectoryInfo(srcPath); FileSystemInfo[] fileinfo = dir.GetFileSystemInfos(); //返回目录中所有文件和子目录 foreach (FileSystemInfo i in fileinfo) { if (i is DirectoryInfo) //判断是否文件夹 { DirectoryInfo subdir = new DirectoryInfo(i.FullName); subdir.Delete(true); //删除子目录和文件 } else { File.Delete(i.FullName); //删除指定文件 } } } catch (Exception e) { throw; } }
调用DelectDir方法前可以先判断文件夹是否存在
if(Directory.Exists(srcPath)) { DelectDir(srcPath); }
上述两例中的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
我们知道,在C#/.NET中的System.IO命名空间下,都是关于文件和文件夹信息操作的类。如果在开发中有删除指定文件夹下所有文件和文件夹这样的需要,应该如何使用C#/.NET来实现这个需求呢?方法一:直接删除整个指定文件夹使用使用Directory.Delete("文件夹路径",true)方法,然后重建这个文件夹【暴力,直接】,具体操作如下:
-
Directory.Delete(fileDir,true);
-
Directory.CreateDirectory(fileDir);
虽然以上这个方法简单,但不推荐使用。方法二:分步删除指定文件夹中的文件和文件夹。因为从指定文件夹中获取文件列表和获取文件夹列表使用的是不同的方法,所以,我们即要删除文件,也要删除文件的话就必须分两步,第一步删除所有文件,第二步删除所有文件夹,我们来整理一下实现这个需求的大概步骤:1.使用Directory.GetFiles("文件夹路径")获取指定文件夹中所有的文件;2.在1的基础上遍历所有文件,使用File.Delete("文件完整路径")来删除每个文件;3.DirectoryInfo实例对象的GetDirectories文件获取所有的文件夹;4.在3的基础上遍历所有文件夹,使用DirectoryInfo实例的Delete方法删除对应的文件夹。第一种(不使用静态扩展方法),代码如下:
-
string directoryPath = "C:\指定的文件夹路径";
-
Directory.GetFiles(directoryPath).ToList().ForEach(File.Delete);
-
Directory.GetDirectories(directoryPath).ToList().ForEach(Directory.Delete);
第二种(使用静态扩展方法),代码如下:
public static void Empty(this System.IO.DirectoryInfo directory) { foreach(System.IO.FileInfo file in directory.GetFiles()) file.Delete(); foreach(System.IO.DirectoryInfo subDirectory in directory.GetDirectories()) subDirectory.Delete(true); }
使用C#/.NET的静态方法的好处是,调用这个静态方法比普通的方法更方便,如:
-
System.IO.DirectoryInfo directory = new System.IO.DirectoryInfo(@"C:\指定的文件夹路径");
-
directory.Empty();
更多相关内容 -
-
c盘里错误报告文件删掉有影响.doc
2020-06-09 09:47:17c盘里错误报告文件删掉有影响 可以这样释放一些C盘空间: 1.打开"我的电脑"-"工具"-"文件夹选项"-"查看"-在"显示所有文件和文件夹"选项前打勾-再按"确定" 2.删除以下文件夹中的内容: C:\Documents and Settings\... -
将idea中编译输出目录 classes 里的文件删掉,发现再次编译不能生成class文件
2020-05-06 18:43:52开发工程中将idea中编译输出目录 out 删掉。发现再次编译不能生成class文件。 解决方案:settings -> compiler 勾选自动编译选项将idea中编译输出目录 classes 里的文件删掉,发现再次编译不能生成class文件。
其他UP主给的解决方法如下:
解决方案:settings -> compiler 勾选自动编译选项
上面是网友给出的办法。但是注意:
虽然把上图沟打上时,还是不编译时:
请把classes文件夹删除,在点击小锤子编译一下就可以了。
换言之,其实把classes文件夹删除
点击小锤子,同样实现手动编译的效果。
-
Springboot文件删除(图片删除)
2019-11-15 15:40:48紧接上篇的文件添加,这篇写文件删除,还是以图片的操作为例。 文件上传和删除更应该算是javaSE的内容,用到的基本都是文件的操作。 首先就是控制类代码 //删除图片文件,只是删除文件,不删除数据库信息 @...紧接上篇的文件添加,这篇写文件删除,还是以图片的操作为例。
文件上传和删除更应该算是javaSE的内容,用到的基本都是文件的操作。
首先就是控制类代码
//删除图片文件,只是删除文件,不删除数据库信息 @PostMapping("/deleteFile") @ResponseBody public String delFile(String path) { //上篇中前端穿过来的是/imctemp-rainy/*.jpg格式的,只需要取出最后的文件名,写死路径,就可以准确找到文件了 //前端页面处理路径, //var imgpath=path.split("/"); //imgpath = imgpath[imgpath.length-1]; String resultInfo = null; //System.out.println(path);///imctemp-rainy/2.jpg int lastIndexOf = path.lastIndexOf("/"); String img_path = path.substring(lastIndexOf + 1, path.length()); //System.out.println(img_path); img_path = "E:/ExerciseSpace/SpringBoot/imageg/" + img_path; //System.out.println(img_path);//输出测试一下文件路径是否正确 File file = new File(img_path); if (file.exists()) {//文件是否存在 if (file.delete()) {//存在就删了,返回1 resultInfo = "1"; } else { resultInfo = "0"; } } else { resultInfo = "文件不存在!"; } return resultInfo; }
前端页面代码
<div class="label"> <label>图片:</label> </div> <div class="field"> <p id="url"> <img :src="menu.bbimg" width="100px" height="100px " id="img" ><!-- menu.bbimg这个是我从后端获取后的图片链接,要改成自己的 --> <label> <input type="button" value="取消图片" v-on:click="delphoto(menu.bbid,menu.bbimg)"/><!-- 参数传的是这条数据的id(为数据库中信息删除做准备,有备无患),第二个是图片的链接。也可以只传id,然后用id查出图片的链接,但是我懒的在写方法了,就直接一块传过去了 --> </label> </div>
//取消图片,删除图片,将图片数据库信息修改为null delphoto:function(bbid,path){ //alert(123); var imgpath=path.split("/"); imgpath = imgpath[imgpath.length-1]; //alert(imgpath); $.post("/bannerlower/deleteFile",{path:imgpath},function(data){ if(data=="1"){//到了这里,本地的图片数据就删除了,但是数据库信息没删,下面就是删除数据库信息了,懒得删了,就一块说下 //alert("图片删除"); //我后端是用的修改,跟其他方法共用的一个,思路就是根据id,把数据库中图片的信息改为null就可以了,所以传了id跟图片链接,并且图片链接为空 $.post("/bannerlower/editimg",{bbid:bbid,imgpath:null},function(data){ if(data=="1"){ //alert("图片信息删除"); //window.location.href="/admin/bannerloweredit?bbid="+bbid; $("#img").attr("src","/imctemp-rainy/no.png");//删除后,让一个默认图片补上空缺,增强用户的体验。 } }) } }); },
-
U盘文件删除如何恢复?U盘里的东西删除怎么还原?
2021-07-21 14:08:29U盘唯一的缺点也许是删除的文件不会进入回收站,因此我们在使用U盘时,也要了解U盘文件删除如何恢复这个问题,以免出现误删U盘文件的情况。 怎么恢复U盘中被清空的数据?电脑并没有为U盘准备删除文件进入回收站的...U盘里的东西删除怎么还原呢?相信很多人都喜欢用U盘作为辅助办公工具,因为它小巧方便,储存量也大。U盘唯一的缺点也许是删除的文件不会进入回收站,因此我们在使用U盘时,也要了解U盘文件删除如何恢复这个问题,以免出现误删U盘文件的情况。
怎么恢复U盘中被清空的数据?电脑并没有为U盘准备删除文件进入回收站的步骤,但是U盘里的东西删除怎么还原这个问题依旧是可以解决的,因为U盘删除文件和电脑删除文件的原理相同。文件被删除并不意味着这个文件突然从磁盘空间中彻底消失,电脑只是删掉这个文件的索引,导致我们无法直接找到文件而已,U盘也是同理。这些无法被直接找到的文件会被默认为“可覆盖”状态。根据这个原理,U盘删除很久的东西可以恢复吗这个问题就能够得到答案了:只要删除文件尚未被覆盖,文件都是可以找回来的。
在遇到这种情况的时候我们首先要保持冷静,先停用出现文件误删的U盘,不要在U盘中执行任何文件读写操作,避免误删文件遭到覆盖。接着,找一款数据恢复软件来为我们提供专业的数据恢复服务,现在小编就用数据蛙数据恢复专家来演示U盘文件删除如何恢复的操作。
1.先进入数据蛙数据恢复专家官网,把软件下载到电脑中,安装完成之后就把U盘接入电脑,打开软件。
下载链接:https://www.shujuwa.net/shujuhuifu/2.在主界面勾选误删文件的文件格式以及需要扫描的U盘,选好后点【扫描】。
3.扫描结果很快就会得出,软件会提供免费的文件结果预览,我们只要在文件列表中根据给出的信息找到需要恢复的文件,并把文件勾选起来就可以了。文件选齐之后,点击右下角的【恢复】。
4.在弹窗里选择一个文件恢复位置,注意不要直接把文件保存到U盘里,这样很容易导致恢复失败。选好之后点确认,U盘误删文件就成功恢复了。
U盘里的东西删除怎么还原?小编已经在文章中给出原理解释和可行方案了。数据恢复软件可以解决U盘文件删除如何恢复的问题,但是我们在使用U盘的过程中还是要多加留心,为重要的文件及时做好数据备份,这样才能保证我们的重要数据万无一失。``
-
Python-csv文件打开、csv文件保存和csv文件删除行信息
2019-05-16 20:28:14csv文件打开、csv文件保存和csv文件删除行信息操作。 首先展示 pckh_train.csv 文件: 接着摆出代码, 即csv文件打开、csv文件保存和csv文件删除行信息操作: import csv # 如果 pckh_train=>re... -
win10系统下tmp临时文件删除不了像何解决
2021-06-25 08:36:00当我们在使用win10系统的途中中,所有会产生很多的临时文件,太多的话就会占用系统磁盘空间影响电脑运列速度,所以就需要删除临时文件,然但是有win10系统用户竟然发现tmp临时文件删除不了,可以怎么解决呢,接着为... -
微信开发者工具 文件删除操作 二次确认框 设置
2022-01-20 11:11:10微信开发者工具,文件删除二次确认框 -
不小心将项目的 iml文件删除了怎么办
2020-08-29 23:07:10重新创建下项目 → 会重新加载 iml配置文件 -
C# 删除文件(一)
2019-04-10 08:29:52但是我在第二次使用的时候常会直接显示上一次保存的图片,后来我发现手动删除上次保存的图,就可以正确显示,所以用到了C#删除文件这个功能,这样每次保存图片之前先把之前的图片删除就可以了。 功能实现: //删除... -
关于java文件删除file.delete()无法删除文件的处理办法
2018-12-28 21:45:16file.delete()无法删除文件file.delete()无法删除文件,无论执行多少次结果都为false; 2.分析原因: 1).有可能有流对该文件进行操作,或者是流操作完没有进行关流操作; 2).有可能时外部进程或那个程序在... -
顽固文件删除工具,顽固文件删除工具
2010-12-16 11:33:28可把很难删除掉的文件轻易就删掉,可把很难删除掉的文件轻易就删掉 -
百度网盘,莫名其妙把文件删除了
2020-02-06 11:04:39今天打开网盘一看,震惊了!上传的照片、文件,都没有了! 一时气愤之后,就算了。这些文件就当作备份,以后应该也没有多少机会再看。再加上是免费的,算了吧。 ... -
LongPathTool v2.20 绿色版(Windows长路径文件删除工具)
2013-02-20 08:59:09LongPathTool v2.20 绿色版(Windows长路径文件删除工具) -
java文件删除不了的坑,特别是压缩文件
2018-06-11 10:52:53我们在用java删除文件的时候通常直接调用file.delete();方法就行了,但是很多情况下却删除不了,下面列举一些情况;1.是文件夹且不为空,这个没什么好说的,可以先删除文件夹里的文件再删除这个文件夹;2.被别的... -
hosts文件被删除了如何解决
2021-02-04 13:01:41二、恢复hosts文件 进入目录C:\Windows\System32\drivers\etc 新建hosts.txt,将下面内容复制到hosts.txt中 # Copyright (c) 1993-1999 Microsoft Corp. # # This is a sample HOSTS file used by Microsof -
二步解决 git 本地文件删除了,如何从云端重新拉取下来
2020-10-29 15:08:27本地的getdbdata.go被误删了 第一步 git reset head .... 第二步 git checkout ... 完成 -
Git 删除本地commit未push文件 ,push本地commit文件
2021-06-01 17:44:511,起因 在push文件的时候, push了一个大家伙,有400M, 但是push要求单个文件大小不能超过200M ...2.2 使用git命令删除大文件 git filter-branch --force --index-filter “git rm -rf --cached --igno -
删除svn中的文件方法
2020-07-28 17:52:02删除svn中的文件有三种方法,在这里就说两种方法 方法一:在项目的目录下打开svn找到版本库浏览器点击进入,找到需要删除的文件,点击删除即可。 邮件选择svn的删除即,删除完在更新一下状态即可,如下图: 方法二... -
CSS文件删除了所有内容,为什么页面还显示老样式呢?
2017-04-14 08:47:01CSS文件里面已经清空样式,但是页面还加载了样式,而不是原始默认样式 -
使用Java文件删除file.delete()无法删除文件的解决方法
2019-08-14 20:43:57使用Java文件删除file.delete()无法删除文件的解决方法 今天在使用springboot删除文件的时候无法进行正常删除,经过一段时间的排查,发现是在进行文件读取后没有关闭数据流导致的,再此进行记录。 查找原因 ... -
Java File文件处理 删除文件
2021-02-27 21:24:181、删除文件要使用Java删除文件,请使用delete()方法:例如:import java.io.File; // Import the File classpublic class DeleteFile {public static void main(String[] args) {File myObj = new File("filename.... -
电脑删除文件怎么恢复
2021-07-25 02:04:24电脑对于白领来说是比不可少的工具,每天接触电脑处理工作中的文件,势必会遇到文件删除的情况。那么如若误删重要的文件应该怎么样去恢复呢?电脑文件在删除的时候,分为普通删除和永久删除。针对不同的删除方法有... -
如何解决电脑桌面文件无法删除问题
2021-06-17 11:03:10如何解决电脑桌面文件无法删除问题电脑是现在最常用的工具之一,有些用户遇到了桌面文件无法删除问题,想知道如何解决,接下来小编就给大家介绍一下具体的操作步骤。具体如下:1. 首先第一步鼠标右键单击桌面,在弹... -
win10休眠文件有必要删除吗_删除休眠文件的方法-win7之家
2021-07-18 00:23:33其实删除休眠文件的影响并不大,小伙伴只需要关闭休眠功能就能自动删除休眠文件数据,而关闭休眠功能只会无法使用快速启动而已。下面就和小编一起来看看删除休眠文件的方法吧。第一步:查看休眠文件1、使用快捷键... -
java调用文件删除方法delete()时无法删除文件(文件流已经关闭依然无法删除)
2018-02-22 00:14:06jvm占用文件导致文件不能删除,debug过程中尝试手动删除文件会提示“文件已在java platform se binary”中打开。 一般来说 java file.delete失败 有以下几个原因 1.看看是否被别的进程引用,手工删除试试(删除不了... -
电脑上的文件删除不掉,需要管理员权限怎么办?
2020-02-02 17:24:02刚才想删除电脑上的一个文件夹,但怎么都删除不掉,非得需要我以前一个U盘的管理员权限,可是我早就不用那个U盘了,弄了好久终于把这个问题解决了,赶紧来记录一下. 按下WIN+R,打开运行对话框 输入gpedit.msc,按回车键,... -
HDFS删除文件
2021-03-10 18:53:48删除HDFS上的文件 需求:删除HDFS上的一个文件 代码: -- 查看文件 hadoop fs -ls /user/hive/warehouse -- 删除文件 hadoop fs -rm /user/hive/warehouse/test.txt 测试记录: [root@hp1 hue-httpd]# hadoop fs -ls /... -
windows超大文件删除后空间没有释放(用磁盘分析软件Space Sniffer 已解决)
2020-05-23 10:18:46老师让我们下matlib,但是那个文件超级大12G,然后bdwp又限速,下了一晚下了个寂寞,然后我看到了那个我需要的文件,打开发现文件打开失败,然后用WinRAR去打开也失败,只能删掉。但是文件太大了提示不能放进回收站... -
eclipse历史记录恢复(误删本地文件或svn误更新导致本地文件删除)方法
2018-03-23 12:13:20对于不熟悉eclipse或svn的很容易在开发的时候误删本地文件或误更新文件导致文件删除,不过,现在随着eclipse工具的强大已经有了恢复历史文件的功能了,第一种方法:在误删除文件后,右键文件之前所在的文件夹,找到...