Phương thức ListFiles () trả về một mảng chứa các đối tượng (đường dẫn trừu tượng) của tất cả các tệp (và thư mục) trong đường dẫn được đại diện bởi đối tượng (Tệp) hiện tại.
Giao diện Bộ lọc Tệp là bộ lọc các tên đường dẫn mà bạn có thể chuyển nó làm tham số cho phương thức listFiles (). Phương pháp này lọc các tên tệp được chuyển qua bộ lọc đã chuyển.
Để lấy các thư mục ẩn trong một thư mục, hãy triển khai FileFilter chỉ chấp nhận các thư mục ẩn và chuyển nó làm tham số cho phương thức listFiles ().
Ví dụ
import java.io.File; import java.io.FileFilter; import java.io.IOException; public class Test{ 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()&& dir.isHidden()) { 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.getName()); System.out.println(fileName); } } }
Đầu ra
List of the jpeg files in the specified directory: hidden directory1 D:\ExampleDirectory\hidden directory1 hidden directory2 D:\ExampleDirectory\hidden directory2
Chúng tôi cũng có thể lấy danh sách các tệp ẩn bằng phương thức is Hidden () của lớp Files -
Ví dụ
import java.io.File; import java.io.IOException; import java.util.Arrays; import java.util.stream.Stream; public class Demo { public static void main(String[] args) throws IOException { File dir = new File("D:\\ExampleDirectory"); File[] files = dir.listFiles(File::isHidden); Stream <File> fileStream = Arrays.stream(files); fileStream.forEach(file -> System.out.println(file.getName())); } }
Đầu ra
D:\ExampleDirectory\hidden directory1 D:\ExampleDirectory\hidden directory2