In this example you'll see how to read the list of files inside a directory. To get this functionality we can use the File.listFiles() method. This method return an array of File object which can be either an instance of file or directory.
i
mport java.io.File;
import java.io.FilenameFilter;
public class DirectoryContentExample
{
public static void main(String[] args)
{
File games = new File("D:\\Games");
// Get a list of file under the specified directory
// above and return it as an abstract file object.
File[] files = games.listFiles();
// Iterates the content of games directory, print it
// and check it whether it was a directory or a file.
for (File file : files)
{
System.out.println(file + " is a "
+ (file.isDirectory() ? "directory" : "file"));
}
// Here we also get the list of file in the directory but
// return it just as an array of String.
String[] xfiles = games.list();
for (String file : xfiles)
{
System.out.println("File = " + file);
}
// Now we want to list the file in the directory but
// we just want a file with a .doc extension. To do
// this we first create a FilenameFilter which will
// be given to the listFiles() method to filter the
// listing process. The rule of filtering is
// implemented in the accept() method of the
// FilenameFilter interface.
FilenameFilter filter = new FilenameFilter()
{
public boolean accept(File dir, String name)
{
if (name.endsWith(".doc"))
{
return true;
}
return false;
}
};
// Give me just a .doc files in your directory.
File[] yfiles = games.listFiles(filter);
for (File doc : yfiles)
{
System.out.println("Doc file = " + doc);
}
}
}
Below is the output.....
T
he File[] array returned:
D:\Games\AOE is a directory
D:\Games\Championship Manager 2007 is a directory
D:\Games\GameHouse is a directory
D:\Games\Sierra is a directory
D:\Games\testing.doc is a file
D:\Games\TTD is a directory
The String[] array returned.
File = AOE
File = Championship Manager 2007
File = GameHouse
File = Sierra
File = testing.doc
File = TTD
The File[] array using FilenameFilter result.
Doc file = D:\Games\testing.doc
Tuesday, March 6, 2012
How do I get the content of a directory in Java?
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment