public class printoutFile { public static void main(String[] args) { printFile(new File("D:\\test"),1); } public static void printFile(File file,int sub) { if (file.isFile()) { System.out.println("您給定的是一個文件"); // 判斷給定目錄是不是一個合法的目錄,若是不是,輸出提示 } else { File[] fileLists = file.listFiles(); // 若是是目錄,獲取該目錄下的內容集合 for (int i = 0; i < fileLists.length; i++) { // 循環遍歷這個集合內容 for (int j = 0; j < sub; j++) { //輸出縮進,爲了在打印結果中區分開文件夾和文件 System.out.print("|---"); } System.out.println(fileLists[i].getName()); //輸出元素名稱 if (fileLists[i].isDirectory()) { //判斷元素是否是一個目錄 printFile(fileLists[i],sub+1); //若是是目錄,繼續調用本方法來輸出其子目錄,由於是其子目錄,因此縮進次數 + 1 } } } } }