使用递归方式遍历指定磁盘路径下的文件及文件夹
来源:互联网 发布:淘宝开店诈骗 编辑:程序博客网 时间:2024/06/10 09:13
package com.javase.io2;
import java.io.File;
import java.util.ArrayList;
public class FileTest {
//确定当前目录是多少层
private static int time;
//遍历磁盘某一路径中的文件
public static void recursionFile(File file){
//递归的出口,如果传进来的是一个文件,或者传进来的是一个空目录,则停止
//如果传进来的是一个文件夹,文件夹下面有文件下或文件,则显示出文件夹的名称和文件夹下的文件名称
if(file.isFile()||0==file.listFiles().length){
return;
}else{
File[] files = file.listFiles();
files = sort(files);
for(File f : files){
StringBuffer output = new StringBuffer();
if(f.isFile()){
//如果是文件,首先显示一个缩进,但是缩进多少,需要获取一个表示进第几层目录的数字,
//用这个数字来决定缩进量
output.append(getTabs(time));
output.append(f.getName());
}else{
output.append(getTabs(time));
output.append(f.getName()).append("文件夹");
}
System.out.println(output.toString());
//如果当前对象是文件夹,则递归调用显示文件的方法,注意先增加缩进量,然后遍历,遍历一个,需要将平级
//的
import java.io.File;
import java.util.ArrayList;
public class FileTest {