欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

用递归的方式得到所有工作空间中的.java文件,并打印出绝对地址和长度

程序员文章站 2022-05-15 08:47:17
...

解题思路:

1.如果文件夹第一层是文件可以找到后缀名为.java的文件,打印相关信息

2.如果文件夹有很多层,需要用到递归思想,每一个文件夹都要寻找

3.最终打印信息

代码如下:

package com.oracle.lx;

import java.io.File;

/*5用递归的方式得到所有工作空间中的.java文件,并打印出绝对地址和长度*/
public class Lx5 {
public static void main(String[] args) {
	File f=new File("D:/OA");//这里写你需要的文件夹路径
	printPathAndLength(f); 	
}
public static void printPathAndLength(File f) {
	if(f.isFile()) {
		if(f.getName().endsWith(".java")) {
		//得到绝对地址
		String str=f.getAbsolutePath();
		//得到长度
		long len=f.length();
		//如果是文件夹
		System.out.println(f.getName()+" 绝对地址:"+str+"长度:"+len);
		}
		}else {
		File[] arr=f.listFiles();
		if(arr.length>0) {
		for(File f1:arr) {
			printPathAndLength(f1);
		}
		}
		}
	}

}

结果如下:

admin.java 绝对地址:D:\OA\src\bean\admin.java长度:428
BalanceBean.java 绝对地址:D:\OA\src\bean\BalanceBean.java长度:1251
ContractBean.java 绝对地址:D:\OA\src\bean\ContractBean.java长度:1279
GradeBean.java 绝对地址:D:\OA\src\bean\GradeBean.java长度:590
MathBean.java 绝对地址:D:\OA\src\bean\MathBean.java长度:721