
The Java.io.File class is an abstract representation of file and directory pathnames. Following are the important points about File −
Instances may or may not denote an actual file-system object such as a file or a directory. If it does denote such an object then that object resides in a partition. A partition is an operating system-specific portion of storage for a file system.
A file system may implement restrictions to certain operations on the actual file-system object, such as reading, writing, and executing. These restrictions are collectively known as access permissions.
Instances of the File class are immutable; that is, once created, the abstract pathname represented by a File object will never change.
Following is the declaration for Java.io.File class −
public class File
extends Object
implements Serializable, Comparable<File>
Following are the fields for Java.io.File class −
static String pathSeparator − This is the system-dependent path-separator character, represented as a string for convenience.
static char pathSeparatorChar − This is the system-dependent path-separator character.
static String separator − This is the system-dependent default name-separator character, represented as a string for convenience.
static char separatorChar − This is the system-dependent default name-separator character.
| Sr.No. | Constructor & Description |
|---|---|
| 1 | File(File parent, String child) This method creates a new File instance from a parent abstract pathname and a child pathname string. |
| 2 | File(String pathname) This method creates a new File instance by converting the given pathname string into an abstract pathname. |
| 3 | File(String parent, String child) This method creates a new File instance from a parent pathname string and a child pathname string. |
| 4 | File(URI uri) This method Creates a new File instance by converting the given file : URI into an abstract pathname. |
| Sr.No. | Method & Description |
|---|---|
| 1 | boolean canExecute()
This method tests whether the application can execute the file denoted by this abstract pathname. |
| 2 | boolean canRead()
This method tests whether the application can read the file denoted by this abstract pathname. |
| 3 | boolean canWrite()
This method tests whether the application can modify the file denoted by this abstract pathname. |
| 4 | int compareTo(File pathname)
This method compares two abstract pathnames lexicographically. |
| 5 | boolean createNewFile()
This method atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist. |
| 6 | static File createTempFile(String prefix, String suffix)
This method creates an empty file in the default temporary-file directory, using the given prefix and suffix to generate its name. |
| 7 | static File createTempFile(String prefix, String suffix, File directory)
This method Creates a new empty file in the specified directory, using the given prefix and suffix strings to generate its name. |
| 8 | boolean delete()
This method deletes the file or directory denoted by this abstract pathname. |
| 9 | void deleteOnExit()
This method requests that the file or directory denoted by this abstract pathname be deleted when the virtual machine terminates. |
| 10 | boolean equals(Object obj)
This method tests this abstract pathname for equality with the given object. |
| 11 | boolean exists()
This method tests whether the file or directory denoted by this abstract pathname exists. |
| 12 | File getAbsoluteFile()
This method returns the absolute form of this abstract pathname. |
| 13 | String getAbsolutePath()
This method returns the absolute pathname string of this abstract pathname. |
| 14 | File getCanonicalFile()
This method returns the canonical form of this abstract pathname. |
| 15 | String getCanonicalPath()
This method returns the canonical pathname string of this abstract pathname. |
| 16 | long getFreeSpace()
This method returns the number of unallocated bytes in the partition named by this abstract path name. |
| 17 | String getName()
This method returns the name of the file or directory denoted by this abstract pathname. |
| 18 | String getParent()
This method returns the pathname string of this abstract pathname's parent, or null if this pathname does not name a parent directory. |
| 19 | File getParentFile()
This method returns the abstract pathname of this abstract pathname's parent, or null if this pathname does not name a parent directory. |
| 20 | String getPath()
This method converts this abstract pathname into a pathname string. |
| 21 | long getTotalSpace()
This method returns the size of the partition named by this abstract pathname. |
| 22 | long getUsableSpace()
This method returns the number of bytes available to this virtual machine on the partition named by this abstract pathname. |
| 23 | int hashCode()
This method computes a hash code for this abstract pathname. |
| 24 | boolean isAbsolute()
This method tests whether this abstract pathname is absolute. |
| 25 | boolean isDirectory()
This method tests whether the file denoted by this abstract pathname is a directory. |
| 26 | boolean isFile()
This method tests whether the file denoted by this abstract pathname is a normal file. |
| 27 | boolean isHidden()
This method tests whether the file named by this abstract pathname is a hidden file. |
| 28 | long lastModified()
This method returns the time that the file denoted by this abstract pathname was last modified. |
| 29 | long length()
This method returns the length of the file denoted by this abstract pathname. |
| 30 | String[] list()
This method returns an array of strings naming the files and directories in the directory denoted by this abstract pathname. |
| 31 | String[] list(FilenameFilter filter)
This method returns an array of strings naming the files and directories in the directory denoted by this abstract pathname that satisfy the specified filter. |
| 32 | File[] listFiles()
This method returns an array of abstract pathnames denoting the files in the directory denoted by this abstract pathname. |
| 33 | File[] listFiles(FileFilter filter)
This method returns an array of abstract pathnames denoting the files and directories in the directory denoted by this abstract pathname that satisfy the specified filter. |
| 34 | File[] listFiles(FilenameFilter filter)
This method returns an array of abstract pathnames denoting the files and directories in the directory denoted by this abstract pathname that satisfy the specified filter. |
| 35 | static File[] listRoots()
This method lists the available filesystem roots. |
| 36 | boolean mkdir()
This method creates the directory named by this abstract pathname. |
| 37 | boolean mkdirs()
This method creates the directory named by this abstract pathname, including any necessary but non existent parent directories. |
| 38 | boolean renameTo(File dest)
This method renames the file denoted by this abstract pathname. |
| 39 | boolean setExecutable(boolean executable)
This is a convenience method to set the owner's execute permission for this abstract pathname. |
| 40 | boolean setExecutable(boolean executable, boolean ownerOnly)
This method Sets the owner's or everybody's execute permission for this abstract pathname. |
| 41 | boolean setLastModified(long time)
This method sets the last-modified time of the file or directory named by this abstract pathname. |
| 42 | boolean setReadable(boolean readable)
This is a convenience method to set the owner's read permission for this abstract pathname. |
| 43 | boolean setReadable(boolean readable, boolean ownerOnly)
This method sets the owner's or everybody's read permission for this abstract pathname. |
| 44 | boolean setReadOnly()
This method marks the file or directory named by this abstract pathname so that only read operations are allowed. |
| 45 | boolean setWritable(boolean writable)
This is a convenience method to set the owner's write permission for this abstract pathname. |
| 46 | boolean setWritable(boolean writable, boolean ownerOnly)
This method sets the owner's or everybody's write permission for this abstract pathname. |
| 47 | String toString()
This method returns the pathname string of this abstract pathname. |
| 48 | URI toURI()
This method constructs a file : URI that represents this abstract pathname. |
This class inherits methods from the following classes −