您的位置:首页 > 编程语言 > Java开发

java遍历电脑文件夹下的文件

2014-03-03 09:39 381 查看
import java.io.File;
import java.io.IOException;
import java.util.LinkedList;

public class Test {
public static void main(String[] args) throws IOException {

long a = System.currentTimeMillis();//记录开始时间

LinkedList list = new LinkedList();
File dir = new File("d:/");
File[] file = dir.listFiles();//存放的是一级目录下的文件以及文件夹

for (int i = 0; i < file.length; i++) {
if (file[i].isDirectory())
list.add(file[i]);//如果是文件夹就加到list中
else
System.out.println(file[i].getAbsolutePath());//如果是文件就输出绝对路径
}
File tmp;
while (!list.isEmpty()) {//遍历list中的文件夹
tmp = (File) list.removeFirst();//移除并返回此列表的第一个元素
if (tmp.isDirectory()) {
file = tmp.listFiles();//存放的是二级目录下的文件以及文件夹
if (file == null)
continue;//如果文件夹为空就跳出,进入下一个文件夹的遍历
for (int i = 0; i < file.length; i++) {//遍历二级目录下的文件夹
if (file[i].isDirectory())
list.add(file[i]);//如果是文件夹就加入到list中,会在下次循环中继续调用文件夹下的文件或者文件夹
else
System.out.println(file[i].getAbsolutePath());
}
} else {
System.out.println(tmp.getAbsolutePath());
}
}

System.out.println(System.currentTimeMillis() - a);//打印遍历的时间
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息