import java.io.File;
public class ShowAllFiles {
public static void main (String[] args) {
String usage = "Usage:Please input a directory.";
if(args.length != 1) {
System.out.print(usage);
System.exit(-1);
}
File f = new File(args[0]);
if(!f.exists()) {
System.out.println("Error:The File is not exists.");
System.out.print(usage);
System.exit(-1);
}
System.out.println(args[0]);
traverse(f,1);
}
static void traverse(File f,int level) {
File[] ls = f.listFiles();
String spaces = "";
for (int i=0;i<level;i++) {
spaces += " ";
}
int len = ls.length;
for (int i=0;i<len;i++) {
System.out.println(spaces+ls[i].getName());
if(ls[i].isDirectory()) {
traverse(ls[i],level+1);
}
}
}
}通过递归调用实现
本文介绍了一个使用Java编写的文件遍历程序,该程序能够递归地列出指定目录及其子目录下的所有文件名。通过调整参数,可以方便地应用于不同的目录结构。

405

被折叠的 条评论
为什么被折叠?



