isFile()
: This method returns true if file exists and is a regular file, note that if file doesn’t exist then it returns false.isDirectory()
: This method returns true if file is actually a directory, if path doesn’t exist then it returns false.
While checking if a file is a directory or regular file, we should first check if the file exists or not. If it exists then only we should check if it’s a directory or file.
A simple java program showing it’s usage.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
package com.journaldev.files; import java.io.File; public class CheckDirectoryOrFile { public static void main(String[] args) { File file = new File("/Users/pankaj/source.txt"); File dir = new File("/Users/pankaj"); File notExists = new File("/Users/pankaj/notafile"); System.out.println("/Users/pankaj/source.txt is file?"+file.isFile()); System.out.println("/Users/pankaj/source.txt is directory?"+file.isDirectory()); System.out.println("/Users/pankaj is file?"+dir.isFile()); System.out.println("/Users/pankaj is directory?"+dir.isDirectory()); System.out.println("/Users/pankaj/notafile is file?"+notExists.isFile()); System.out.println("/Users/pankaj/notafile is directory?"+notExists.isDirectory()); } } |
Output of the above program is:
1 2 3 4 5 6 7 8 |
<span style="color: #008000;"><strong><code> /Users/pankaj/source.txt is file?true /Users/pankaj/source.txt is directory?false /Users/pankaj is file?false /Users/pankaj is directory?true /Users/pankaj/notafile is file?false /Users/pankaj/notafile is directory?false </code></strong></span> |