如何使用 Java 只從一個資料夾中獲取目錄?
ListFiles() 方法返回一個數組,其中包含當前 (File) 物件表示的路徑中的所有檔案(和目錄)的物件(抽象路徑)。
File Filter 介面是你可以將它作為引數傳遞給 listFiles() 方法的路徑名的過濾器。此方法過濾傳遞到傳遞的過濾器中的檔名。
要獲取資料夾中的目錄,請實現一個只接受目錄的 FileFilter,並將其作為 listFiles() 方法的引數傳遞。
以下是 ExampleDirectory 的內容的螢幕截圖

示例
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
public class MyExample{
public static void main(String args[]) throws IOException {
//Creating a File object for directory
File directoryPath = new File("D:\ExampleDirectory");
//Creating filter for directories files
FileFilter fileFilter = new FileFilter(){
public boolean accept(File dir) {
if (dir.isDirectory()) {
return true;
} else {
return false;
}
}
};
File[] list = directoryPath.listFiles(fileFilter);
System.out.println("List of the jpeg files in the specified directory:");
for(File fileName : list) {
System.out.println(fileName);
}
}
}輸出
List of the jpeg files in the specified directory: D:\ExampleDirectory\sample directory1 D:\ExampleDirectory\sample directory2 D:\ExampleDirectory\sample directory3 D:\ExampleDirectory\sample directory4
示例
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class ListOfFiles {
public static void main(String[] args) throws IOException {
Stream<Path> path = Files.walk(Paths.get("D:\ExampleDirectory"));
path = path.filter(Files::isDirectory);
path.forEach(System.out::println);
}
}輸出
D:\ExampleDirectory D:\ExampleDirectory\sample directory1 D:\ExampleDirectory\sample directory2 D:\ExampleDirectory\sample directory3 D:\ExampleDirectory\sample directory4
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP