The ListFiles()方法傳回一個數組,其中包含當前(File)物件表示的路徑中所有檔案(和目錄)的物件(抽象路徑)。
File Filter介面是用來過濾可以將其作為參數傳遞給listFiles()方法的路徑名的過濾器。此方法根據傳遞的過濾器過濾檔案名稱。
要取得資料夾中的隱藏目錄,請實作一個只接受隱藏目錄的FileFilter,並將其作為參數傳遞給listFiles()方法。
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); } } }
List of the jpeg files in the specified directory: hidden directory1 D:\ExampleDirectory\hidden directory1 hidden directory2 D:\ExampleDirectory\hidden directory2
我們也可以使用Files類別的isHidden()方法來取得隱藏檔案的清單−
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())); } }
D:\ExampleDirectory\hidden directory1 D:\ExampleDirectory\hidden directory2
以上是如何在Java中列出目錄中的隱藏檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!