package com.xw.io;
import java.io.File;
public class Demo {
/**
* @param args
*/
private static int spaceNumber = -1;
private static StringBuilder sb = new StringBuilder();
public static void main(String[] args) {
// 创建一个文件对象
File file = new File("F://IO_IN");
// 罗列出子文件夹;
listFile(file);
System.out.println("end");
}
//第一种方式(for循环占用内存空间,资源浪费)
public static void listFile1(File file) {
spaceNumber++;
File[] fs = file.listFiles();
for (File f : fs) {
String s = "";
for (int i = 0; i < spaceNumber; i++) {
s += "\t";
}
if (f.isDirectory()) {
System.out.println(s + "即将遍历文件夹:" + f.getName());
listFile1(f);
spaceNumber--;
} else {
System.out.println(s + f.getName());
}
}
}
public static void listFile(File file) {
File[] fs = file.listFiles(); //获取所有文件
if (fs == null) {
if (!file.exists()) {
System.out.println("文件夹不存在");
} else {
System.out.println("----" + file.getName() + "无权限遍历");
return;
}
}
for (File f : fs) {
if (f.isDirectory()) {
System.out.println(sb.toString() + "即将遍历文件夹:" + f.getName());
sb.append("\t");
listFile(f);
sb.deleteCharAt(sb.length() - 1);
} else {
System.out.println(sb.toString() + f.getName());
}
}
}
}
扫描遍历文件夹Demo
最新推荐文章于 2024-05-20 11:38:21 发布