devxlogo

Use a Filter to Retrieve a Specific Subset of Files in a Directory

Use a Filter to Retrieve a Specific Subset of Files in a Directory

In Java, File.list() lists all the files in a directory. However, rather than listing all the files and then discarding unnecessary files in your code, this tip will show you how to use a filter to retrieve a specific subset of files.

java.io.FilenameFilter is an interface which can be used to get only that set of files that match a specific criteria. Implement this interface to provide your logic of filtering:

public class FileExtensionFilter implements FilenameFilter{   private String ext="*";   public FileExtensionFilter(String ext){     this.ext = ext;   }   public boolean accept(File dir, String name){     if (name.endsWith(ext))       return true;     return false;   }}

To use this filter in your code:

File f = new File("C:\sample");FileExtensionFilter filter = new FileExtensionFilter(".java");String[] contents = f.list(filter);

This example returns only those files with a .java extension.

See also  Does It Make Sense to Splurge on a Laptop?
devxblackblue

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist