我試圖做一個程序,遍歷一個目錄和子目錄與指定的擴展名。這裏是代碼我有迄今爲止。我試圖使用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