想删除某一路径之下所有文件:
删除文件,Insus.NET 写了2个方法,名称一样,重载而已。
原理简单,即是循环指定路径下所有目录和子目录来进行删除文件。重载的方法,带多一个参数。是想删除几天前的文件,根扰文件的创建日期来判断。
代码高亮的一行,Insus.NET是想这个数据不管使用这个方法,输入一个正数或是负数均可。最终处理为一个负数。
写到这里,你还可以限制不能输入0值。
public static void DeleteAllFiles(string physicalPath) { DirectoryInfo di = new DirectoryInfo(physicalPath); foreach (FileInfo fi in di.GetFiles()) { fi.Delete(); } foreach (DirectoryInfo d in di.GetDirectories()) { DeleteAllFiles(d.FullName); } } public static void DeleteAllFiles(string physicalPath, int days) { int day = -(Math.Abs(days)); DirectoryInfo di = new DirectoryInfo(physicalPath); foreach (FileInfo fi in di.GetFiles()) { if (fi.CreationTime < DateTime.Now.AddDays(days)) fi.Delete(); } foreach (DirectoryInfo d in di.GetDirectories()) { DeleteAllFiles(d.FullName, days); } }
Source Code
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦