我试图做一个程序,遍历一个目录和子目录与指定的扩展名。这里是代码我有迄今为止。我试图使用endsWith方法,但因为我传递参数递归调用的文件类型,我不能使用增强For循环中的字符串。目录遍历在java中的扩展
import java.io.File;
公共类Traverse_Recursively {
/**
* @param args
*/
public static void main(String[] args) {
File inputFolder = new File("c:/inputFolder");
traverse(inputFolder, "");
}
public static void traverse(File parentNode, String leftIndent) {
if (parentNode.isDirectory()) {
System.out.println(leftIndent + parentNode.getName());
leftIndent += " ";
File childNodes[] = parentNode.listFiles();
for (File childNode : childNodes) {
traverse(childNode, leftIndent);
}
} else {
System.out.println(leftIndent +"| --> "+ parentNode.getName());
}
}
}
什么问题?你没有通过或测试任何扩展名。 – 2013-02-17 08:55:56
还有另一个listFiles方法,您可以在其中传递扩展过滤器作为参数:http://docs.oracle.com/javase/1.4.2/docs/api/java/io/File.html#listFiles(java.io。 FileFilter) – vadchen 2013-02-17 08:58:29
是的,我没有通过任何Extension.I想要一个代码遍历目录扩展名(txt,zip,png等),但我不知道如何这样做。 – Harjot 2013-02-17 09:01:24