Class FileTimes
java.lang.Object
org.apache.commons.io.file.attribute.FileTimes
Helps use
FileTime
and interoperate Date and NTFS times.- Since:
- 2.12.0
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic FileTime
fromUnixTime
(long time) Converts standard UNIX time (in seconds, UTC/GMT) toFileTime
.static boolean
isUnixTime
(long seconds) Tests whether a given number of seconds (since Epoch) can be safely represented in the standard UNIX time.static boolean
isUnixTime
(FileTime time) Tests whether a FileTime can be safely represented in the standard UNIX time.static FileTime
minusMillis
(FileTime fileTime, long millisToSubtract) Subtracts milliseconds from a source FileTime.static FileTime
minusNanos
(FileTime fileTime, long nanosToSubtract) Subtracts nanoseconds from a source FileTime.static FileTime
minusSeconds
(FileTime fileTime, long secondsToSubtract) Subtracts seconds from a source FileTime.static FileTime
now()
Obtains the current instant FileTime from the system clock.static Date
ntfsTimeToDate
(long ntfsTime) Converts NTFS time (100 nanosecond units since 1 January 1601) to Java time.static FileTime
ntfsTimeToFileTime
(long ntfsTime) Converts NTFS time (100-nanosecond units since 1 January 1601) to a FileTime.static FileTime
plusMillis
(FileTime fileTime, long millisToAdd) Adds milliseconds to a source FileTime.static FileTime
Adds nanoseconds from a source FileTime.static FileTime
plusSeconds
(FileTime fileTime, long secondsToAdd) Adds seconds to a source FileTime.static void
setLastModifiedTime
(Path path) Sets the last modified time of the given file path to now.static Date
static FileTime
toFileTime
(Date date) static long
toNtfsTime
(long javaTime) Converts Java time (milliseconds since Epoch) to NTFS time.static long
toNtfsTime
(FileTime fileTime) Converts aFileTime
to NTFS time (100-nanosecond units since 1 January 1601).static long
toNtfsTime
(Date date) Converts aDate
to NTFS time.static long
toUnixTime
(FileTime fileTime) ConvertsFileTime
to standard UNIX time in seconds.
-
Field Details
-
EPOCH
Constant for the1970-01-01T00:00:00Z
epoch
as a time stamp attribute.- See Also:
-
-
Method Details
-
fromUnixTime
Converts standard UNIX time (in seconds, UTC/GMT) toFileTime
.- Parameters:
time
- UNIX timestamp (seconds).- Returns:
- the corresponding FileTime.
- Since:
- 2.16.0
-
isUnixTime
Tests whether a FileTime can be safely represented in the standard UNIX time.If the FileTime is null, this method returns true.
- Parameters:
time
- the FileTime to evaluate, can be null.- Returns:
- true if the time exceeds the minimum or maximum UNIX time, false otherwise.
- Since:
- 2.16.0
-
isUnixTime
Tests whether a given number of seconds (since Epoch) can be safely represented in the standard UNIX time.- Parameters:
seconds
- the number of seconds (since Epoch) to evaluate.- Returns:
- true if the time can be represented in the standard UNIX time, false otherwise.
- Since:
- 2.16.0
-
minusMillis
Subtracts milliseconds from a source FileTime.- Parameters:
fileTime
- The source FileTime.millisToSubtract
- The milliseconds to subtract.- Returns:
- The resulting FileTime.
-
minusNanos
Subtracts nanoseconds from a source FileTime.- Parameters:
fileTime
- The source FileTime.nanosToSubtract
- The nanoseconds to subtract.- Returns:
- The resulting FileTime.
-
minusSeconds
Subtracts seconds from a source FileTime.- Parameters:
fileTime
- The source FileTime.secondsToSubtract
- The seconds to subtract.- Returns:
- The resulting FileTime.
-
now
Obtains the current instant FileTime from the system clock.- Returns:
- the current instant FileTime from the system clock.
-
ntfsTimeToDate
Converts NTFS time (100 nanosecond units since 1 January 1601) to Java time.- Parameters:
ntfsTime
- the NTFS time in 100 nanosecond units- Returns:
- the Date
-
ntfsTimeToFileTime
Converts NTFS time (100-nanosecond units since 1 January 1601) to a FileTime.- Parameters:
ntfsTime
- the NTFS time in 100-nanosecond units- Returns:
- the FileTime
- See Also:
-
plusMillis
Adds milliseconds to a source FileTime.- Parameters:
fileTime
- The source FileTime.millisToAdd
- The milliseconds to add.- Returns:
- The resulting FileTime.
-
plusNanos
Adds nanoseconds from a source FileTime.- Parameters:
fileTime
- The source FileTime.nanosToSubtract
- The nanoseconds to subtract.- Returns:
- The resulting FileTime.
-
plusSeconds
Adds seconds to a source FileTime.- Parameters:
fileTime
- The source FileTime.secondsToAdd
- The seconds to add.- Returns:
- The resulting FileTime.
-
setLastModifiedTime
Sets the last modified time of the given file path to now.- Parameters:
path
- The file path to set.- Throws:
IOException
- if an I/O error occurs.
-
toDate
- Parameters:
fileTime
- the file time to be converted.- Returns:
- a
Date
which corresponds to the supplied time, ornull
if the time isnull
. - See Also:
-
toFileTime
- Parameters:
date
- the date to be converted.- Returns:
- a
FileTime
which corresponds to the supplied date, ornull
if the date isnull
. - See Also:
-
toNtfsTime
Converts aDate
to NTFS time.- Parameters:
date
- the Date- Returns:
- the NTFS time
-
toNtfsTime
Converts aFileTime
to NTFS time (100-nanosecond units since 1 January 1601).- Parameters:
fileTime
- the FileTime- Returns:
- the NTFS time in 100-nanosecond units
-
toNtfsTime
Converts Java time (milliseconds since Epoch) to NTFS time.- Parameters:
javaTime
- the Java time- Returns:
- the NTFS time
- Since:
- 2.16.0
-
toUnixTime
ConvertsFileTime
to standard UNIX time in seconds.The returned seconds value may lie out of bounds of UNIX time. Check with
isUnixTime(long)
.- Parameters:
fileTime
- the original FileTime.- Returns:
- the UNIX timestamp or 0 if the input is null.
- Since:
- 2.16.0
- See Also:
-