File listFiles() method in Java with Examples
Last Updated :
30 Jan, 2019
The listFiles() method is a part of File class.The function returns an array of Files denoting the files in a given abstract pathname if the path name is a directory else returns null. The function is an overloaded function. One of the function does not have any parameter, the second function takes FilenameFilter object as parameter, the third function takes FileFilter object as parameter
Function Signature:
public File[] listFiles()
public File[] listFiles(FilenameFilter f)
public File[] listFiles(FileFilter f)
Function Syntax:
file.listFiles()
file.listFiles(filter)
Parameters: The function is a overloaded function
- One of the function does not have any parameter,
- The second function takes FilenameFilter object as a parameter,
- The third function takes FileFilter object as a parameter
Return value: The function returns a File array, or null value if the file object is a file.
Exception: This method throws Security Exception if the function is not allowed read access to the file
Below programs will illustrate the use of the listFiles() function
Example 1: We will try to find all the files and directories in a given directory
import java.io.*;
public class solution {
public static void main(String args[])
{
try {
File f = new File( "f:\\program" );
File[] files = f.listFiles();
System.out.println( "Files are:" );
for ( int i = 0 ; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
|
Output:
Files are:
1232.txt
1245.txt
5671.txt
program1
Example 2: We will try to find all the files and directories in a given directory whose names start with “12”
import java.io.*;
public class solution {
public static void main(String args[])
{
try {
File f = new File( "f:\\program" );
FilenameFilter filter = new FilenameFilter() {
public boolean accept(File f, String name)
{
return name.startsWith( "12" );
}
};
File[] files = f.listFiles(filter);
System.out.println( "Files are:" );
for ( int i = 0 ; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
|
Output:
Files are:
1232.txt
1245.txt
Example 3: We will try to find all the files and directories in a given directory which are text files
import java.io.*;
public class solution {
public static void main(String args[])
{
try {
File f = new File( "f:\\program" );
FileFilter filter = new FileFilter() {
public boolean accept(File f)
{
return f.getName().endsWith( "txt" );
}
};
File[] files = f.listFiles(filter);
System.out.println( "Files are:" );
for ( int i = 0 ; i < files.length; i++) {
System.out.println(files[i].getName());
}
}
catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
|
Output:
Files are:
1232.txt
1245.txt
5671.txt
The programs might not run in an online IDE. please use an offline IDE and set the Parent file of the file
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...