java 20 -3 递归之删除特定目录下的特定文件

 1 /*
 2      需求:删除H:\demo目录下的带内容的文件
 3      分析:
 4          A:封装该目录
 5          B:获取该目录下所有的文件或文件夹的File数组
 6          C:遍历该File数组,获取每一个File对象
 7          D:判断所遍历的FIle对象
 8              是否是文件夹
 9                  是:返回步骤B
10                  不是:判断里面是否有内容
11                      有:删除
12                      不是:不理
13      B-D设为递归方法:
14          返回类型;void
15          参数列表:File xxx
16          出口:文件里面有内容
17  */
18 package zl_DiGui;
19
20 import java.io.File;
21
22 public class FileDeleteDemo {
23
24     public static void main(String[] args) {
25
26         //封装该目录
27         File allfile = new File("H:\\demo");
28
29         //调用递归
30         deletefile(allfile);
31      }
32
33     //递归方法
34     private static void deletefile(File allfile) {
35         //获取该目录下的所有文件或文件夹的File数组
36         File[] arrayfile = allfile.listFiles();
37
38         //遍历该数组,获取每一个File对象
39         for(File file : arrayfile){
40             //判断是否是文件夹
41             if(file.isDirectory()){
42                 //是的话,返回步骤B
43                 deletefile(file);
44             }
45             else{
46                 //不是,就判断是否为空文件
47                 long l = file.length();
48                 if(l != 0 ){
49                     file.delete();
50                 }
51                 //如果是空文件的话,就输出它的名称和绝对路径
52                 else{
53                     System.out.println(file.getName()+"\t"+file.getAbsolutePath());
54                     /*
55                     a.txt    H:\demo\a.txt
56                     地方.mp3    H:\demo\地方.mp3
57                     斯蒂芬撒.avi    H:\demo\撒旦发射的\斯蒂芬撒.avi
58                     */
59                 }
60             }
61         }
62
63     }
64
65 }
时间: 2024-10-20 22:46:58

java 20 -3 递归之删除特定目录下的特定文件的相关文章

删除一个目录下的所有文件,但保留一个指定文件

此题问题虽小,但是初学者还是很难给出合理的答案的!本文来自老男孩21期网络班学员 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 面试题:删除一个目录下的所有文件,但保留一个指定文件 解答: 假设这个目录是/xx/,里面有file1,file2,file3..file10  十个文件

php删除指定目录下的相关文件实例

在php中删除文件最简单的办法直接使用unlink命令,但本文章介绍的是需要删除指定目录下的指定文件,所以我需要遍历删除了,具体看这个例子.  代码如下 复制代码 <?php //删除指定文件夹下的非法文件 function my_del($dir)  {     if(is_dir($dir)){         //打开指定文件夹         if($handle = opendir($dir))         {             while(false !== ($file

linux面试题:删除一个目录下的所有文件,但保留一个指定文件

此题问题虽小,但是初学者还是很难给出合理的答案的!本文来自老男孩21期网络班学员 面试题:删除一个目录下的所有文件,但保留一个指定文件 解答: 假设这个目录是/xx/,里面有file1,file2,file3..file10  十个文件 [[email protected] xx]# touch file{1..10} [[email protected] xx]# ls file1  file10  file2  file3  file4  file5  file6  file7  file8

采用递归方式查询某目录下的所有文件

private void DirPathAll(string dirpath) { //本目录下的文件 var paths = Directory.GetFiles(dirpath); foreach (var path in paths) { Application.DoEvents(); listBox1.Items.Add(path); } //所有子目录下的文件 var files = Directory.GetDirectories(dirpath); //获取所有子目录 foreac

C#直接删除指定目录下的所有文件及文件夹(保留目录)

? ????#region 直接删除指定目录下的所有文件及文件夹(保留目录) /// <summary> /// 直接删除指定目录下的所有文件及文件夹(保留目录) /// </summary> /// <param name="strPath">文件夹路径</param> /// <returns>执行结果</returns> public bool DeleteDir(string strPath) { try

java 20 -2 递归之找特定目录下的特定格式文件

1 /* 2 需求:把C:\Users\Administrator\Desktop\记录目录下所有以.java结尾的文件的绝对路径输出到控制台 3 分析: 4 A:封装该目录 5 B:获取该目录下的所有文件或文件夹的File数组 6 C:遍历该File数组,得到每个File对象 7 D:判断所遍历的File对象是否是文件夹: 8 是:回到B,继续执行 9 不是:判断是否是以.java结尾 10 是:输出该文件的绝对路径 11 不是:不理 12 总结:上面的分析中,如果是以递归来做.那么,B.C.

python删除指定目录下的指定文件和文件夹

具体代码: #coding:utf-8import os,sys,platformclass RemoveTagFile(object): path=None def removeFile(self,path,remove_list,retain_list): #path后面要跟/ self.path=path system_test=platform.system() if(system_test=='Windows'): path_last=self.path[-1] if(path_las

删除指定目录下的空文件夹

//删除制定目录下的所有空文件夹 //num=0 第一次遍历该文件夹 num=1 第二次遍历该文件夹 public static void ListDirectory(File file,int num)throws Exception { if(!file.exists()) { throw new IllegalArgumentException("目录"+file+"不存在"); } else if(!file.isDirectory()) { throw n

Python正则匹配递归获得给出目录下的特定类型的文件小技巧

需求是酱的: 输入一个目录,这个目录包含检测目录的必备信息但不准确需要获得后加工一下,如给出目录:C:\Program Files\Common Files\DESIGNER,需要检测的目录是:C:\Program Files\Common Files\System,即从给出的目录中获取前面的信息,后面的补上的目录(System)是指定的.从E:\res\tmp目录中检测xml文件,返回xml文件的目录 代码如下: 1 import os 2 import re 3 pathlist = []