Java 之遞歸遍歷目錄java
1、內容數組
輸出指定目錄(文件夾)下的全部文件(包括目錄)的絕對路徑spa
2、源代碼:RecursiveListDirectory.javacode
1 package cn.com.zfc.day016; 2 3 import java.io.File; 4 5 /** 6 * @describe 遞歸遍歷目錄 7 * @author zfc 8 * @date 2018年1月1日 上午8:44:55 9 */ 10 public class RecursiveListDirectory { 11 12 public static void main(String[] args) { 13 String directoryName = "F:\\StudySoft"; 14 // 一、映射目錄文件 15 File directory = new File(directoryName); 16 // 二、調用方法 17 recursiveListDirectory(directory); 18 } 19 20 /** 21 * 輸出指定目錄下面的文件名稱,包括子目錄 22 * 23 * @param directoryName:目錄名稱 24 * @author zfc 25 * @date 2018年1月1日上午8:46:08 26 * 27 */ 28 public static void recursiveListDirectory(File directory) { 29 // 一、判斷映射的目錄文件是否存在? 30 if (!directory.exists()) { 31 // 不存在則直接返回 32 return; 33 } 34 // 二、判斷是不是目錄? 35 if (!directory.isDirectory()) { 36 // 不是目錄,判斷是不是文件? 37 if (directory.isFile()) { 38 System.out.println("文件絕對路徑:" + directory.getAbsolutePath()); 39 } 40 } else { 41 // 是目錄,獲取該目錄下面的全部文件(包括目錄) 42 File[] files = directory.listFiles(); 43 // 判斷 files 是否爲空? 44 if (null != files) { 45 // 遍歷文件數組 46 for (File f : files) { 47 // 判斷是不是目錄? 48 if (f.isDirectory()) { 49 // 是目錄 50 System.out.println("目錄絕對路徑:" + f.getAbsolutePath()); 51 recursiveListDirectory(f); 52 } else { 53 // 不是目錄,判斷是不是文件? 54 if (f.isFile()) { 55 System.out.println("文件絕對路徑:" + f.getAbsolutePath()); 56 } 57 } 58 } 59 } 60 } 61 } 62 }
3、運行結果blog