关于文件搜索器总结

     

            关于搜索文件等方法:

String i="传入路径";   //创建一个路径(路径用反斜杠或者双斜杠)

File file=new File(i);   //根据给定的路径创建File

file.getAbsolutePath();   //获取文件的绝对路径

file.getName();  //获取文件名

file.getParent();   //获取父目录名

file.isDirectory();   //判断是否为文件夹

file.isFile();   //判断是否为文件


     关键在于递归方法的使用;

递归则是自己调自己,当然需要结束条件,不然更是死循环了。。

    如:       使用递归循环输出大于或等于  0 到10之间的数。。

public static int triangle(int n) {//递归方法,循环调用  
         i=10;
        if (i >=0) {     //判断条件
           System.out.println(i);
            triangle(i);    //使用递归再次调用此方法
} else { System.out.println(END); } }
     在文件搜索器中,我们则需要调用递归算法来清楚的获得文件夹中包含的文件和文件夹;直到文件夹中不在包含文件夹。
如下为原代码:
private void processFile(File file){	
		File [] files=file.listFiles(); 		//定义一个文件夹数组
		if(files==null||files.length<=0){    //如果数组为空或者长度为0是则结束方法
			return;
		}
		for (int i = 0; i < files.length; i++) {	    				
       //	 String path=files[i].getAbsolutePath(); 	//	获取文件的绝对路径		 
		String str =files[i].getName();    //获得文件名
			File file1=files[i];   
			if(file1.isFile())  //判断文件是否是文件
			{
				if(str.indexOf(zi)>=0){
				fileCount++;  //如果是文件则加一
				}
			}else
			{
				if(str.indexOf(zi)>=0){
				DirCount++;   //否则文件夹数目加一
				}
				processFile(file1);   //如果是文件夹在使用递归再次调用此方法
			}
		}
		
	}
 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值