io流(递归遍历目录)
递归遍历目录
就是使用File类来遍历文件,不一样的是,它还要遍历内部的文件夹,并使输出的结果看起来有层次,代码如下:
这里的注意点是:
在遍历第一层文件时,判断是否为文件夹,是的话继续遍历,再就是将遍历的实现创建一个方法,方便使用
package com.bjsxt.test01;
import java.io.File;
public class Test3 {
public static void main(String[] args) {
File f = new File("D:\\a");
bianli(f,1);
}
public static void bianli(File f,int level){
File[] fs = f.listFiles();
for (File file : fs) {
for (int i = 0; i <=level-1; i++) {//这个循环的目的是让目录看起来有层次
System.out.print("-");
}
System.out.println(file.getName());//只遍历名字,否则默认遍历地址
if (file.isDirectory()){//判断是否为目录,是的话继续遍历
bianli(file,level+1);
}
}
}
}