首页 > 代码库 > java 20 -2 递归之找特定目录下的特定格式文件

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、D两个步骤可以设为个递归方法,该递归方法:13          返回类型:void14          参数列表:File xxx15          出口:以.java结尾16  */17 package zl_DiGui;18 19 import java.io.File;20 public class FilePathDemo {21 22     public static void main(String[] args) {23         //封装该目录24         File allfile = new File("C:\\Users\\Administrator\\Desktop\\记录");25             26         //调用递归27         getjavafile(allfile);28     }29     //建立递归方法30     private static void getjavafile(File allfile) {31         32         // 获取该目录下所有文件或文件夹的File数组33         File[] arryfile = allfile.listFiles();34         35         //对该File数组进行遍历36         for(File file : arryfile){37             38             //判断是否是文件夹39             if(file.isDirectory()){40                 //是的话,就继续以这个文件夹为目录,获取它里面的文件或文件夹的File数组41                 //也就是返回步骤B42                 getjavafile(file);43             }44             else{45                 //如果不是文件夹,而是文件,则判断是否以.java结尾46                 if(file.getName().endsWith(".java")){47                     //是的话就输出它的绝对路径48                     System.out.println(file.getAbsolutePath());49                 }50             }51         }52 53     }54     55 }

 

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