Java 之遞歸遍歷目錄

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

相關文章
相關標籤/搜索