public class FileSystemUtils extends Object
This class provides static utility methods for general file system
functions not provided via the JDK File
class.
The current functions provided are:
Constructor and Description |
---|
FileSystemUtils()
Instances should NOT be constructed in standard programming.
|
Modifier and Type | Method and Description |
---|---|
static long |
freeSpace(String path)
Deprecated.
Use freeSpaceKb(String)
Deprecated from 1.3, may be removed in 2.0
|
static long |
freeSpaceKb()
Returns the disk size of the volume which holds the working directory.
|
static long |
freeSpaceKb(long timeout)
Returns the disk size of the volume which holds the working directory.
|
static long |
freeSpaceKb(String path)
Returns the free space on a drive or volume in kilobytes by invoking
the command line.
|
static long |
freeSpaceKb(String path,
long timeout)
Returns the free space on a drive or volume in kilobytes by invoking
the command line.
|
public FileSystemUtils()
@Deprecated public static long freeSpace(String path) throws IOException
freeSpaceKb(String)
which returns a result in kilobytes.
Note that some OS's are NOT currently supported, including OS/390, OpenVMS.
FileSystemUtils.freeSpace("C:"); // Windows FileSystemUtils.freeSpace("/volume"); // *nixThe free space is calculated via the command line. It uses 'dir /-c' on Windows and 'df' on *nix.
path
- the path to get free space for, not null, not empty on UnixIllegalArgumentException
- if the path is invalidIllegalStateException
- if an error occurred in initialisationIOException
- if an error occurs when finding the free spacepublic static long freeSpaceKb(String path) throws IOException
FileSystemUtils.freeSpaceKb("C:"); // Windows FileSystemUtils.freeSpaceKb("/volume"); // *nixThe free space is calculated via the command line. It uses 'dir /-c' on Windows, 'df -kP' on AIX/HP-UX and 'df -k' on other Unix.
In order to work, you must be running Windows, or have a implementation of Unix df that supports GNU format when passed -k (or -kP). If you are going to rely on this code, please check that it works on your OS by running some simple tests to compare the command line with the output from this class. If your operating system isn't supported, please raise a JIRA call detailing the exact result from df -k and as much other detail as possible, thanks.
path
- the path to get free space for, not null, not empty on UnixIllegalArgumentException
- if the path is invalidIllegalStateException
- if an error occurred in initialisationIOException
- if an error occurs when finding the free spacepublic static long freeSpaceKb(String path, long timeout) throws IOException
FileSystemUtils.freeSpaceKb("C:"); // Windows FileSystemUtils.freeSpaceKb("/volume"); // *nixThe free space is calculated via the command line. It uses 'dir /-c' on Windows, 'df -kP' on AIX/HP-UX and 'df -k' on other Unix.
In order to work, you must be running Windows, or have a implementation of Unix df that supports GNU format when passed -k (or -kP). If you are going to rely on this code, please check that it works on your OS by running some simple tests to compare the command line with the output from this class. If your operating system isn't supported, please raise a JIRA call detailing the exact result from df -k and as much other detail as possible, thanks.
path
- the path to get free space for, not null, not empty on Unixtimeout
- The timeout amount in milliseconds or no timeout if the value
is zero or lessIllegalArgumentException
- if the path is invalidIllegalStateException
- if an error occurred in initialisationIOException
- if an error occurs when finding the free spacepublic static long freeSpaceKb() throws IOException
Identical to:
freeSpaceKb(new File(".").getAbsolutePath())
IllegalStateException
- if an error occurred in initialisationIOException
- if an error occurs when finding the free spacepublic static long freeSpaceKb(long timeout) throws IOException
Identical to:
freeSpaceKb(new File(".").getAbsolutePath())
timeout
- The timeout amount in milliseconds or no timeout if the value
is zero or lessIllegalStateException
- if an error occurred in initialisationIOException
- if an error occurs when finding the free spaceCopyright © 2002–2016 The Apache Software Foundation. All rights reserved.