列出目錄中所有檔案和巢狀子目錄的 Java 程式 - 遞迴方法
要列出目錄中所有檔案和巢狀子目錄,Java 程式如下 −
示例
import java.io.File;
public class Demo{
static void print_recursively(File[] my_arr,int my_index,int sub_level){
if(my_index == my_arr.length)
return;
for (int i = 0; i < sub_level; i++)
System.out.print("\t");
if(my_arr[my_index].isFile())
System.out.println(my_arr[my_index].getName());
else if(my_arr[my_index].isDirectory()){
System.out.println("[" + my_arr[my_index].getName() + "]");
print_recursively(my_arr[my_index].listFiles(), 0, sub_level + 1);
}
print_recursively(my_arr,++my_index, sub_level);
}
public static void main(String[] args){
String path_main = "path to folder that contains files";
File main_dir = new File(path_main);
if(main_dir.exists() && main_dir.isDirectory()){
File my_arr[] = main_dir.listFiles();
System.out.println("Files listed from the main directory are : " + main_dir);
print_recursively(my_arr,0,0);
}
}
}輸出
Inside the directory path, all the files of all formats from the path will be listed
名為 Demo 的類包含一個名為 ‘print_recursively’ 的函式,該函式採用陣列和索引值以及巢狀級別作為引數,並遍歷檔案並返回該特定目錄中所有檔案的列表。
在 main 函式中,定義了包含所有檔案的資料夾的路徑,並且還建立了一個新的檔案路徑。‘listFiles’ 函式用於列出該特定資料夾中的所有檔案。接下來,透過傳遞這些引數呼叫該函式。結果顯示在控制檯上。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
安卓
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP