- All Implemented Interfaces:
Comparable<FileTime>
public final class FileTime extends Object implements Comparable<FileTime>
-
Method Summary
Modifier and TypeMethodDescriptionint
Compares the value of twoFileTime
objects for order.boolean
Tests thisFileTime
for equality with the given object.static FileTime
Returns aFileTime
representing a value at the given unit of granularity.static FileTime
Returns aFileTime
representing the same point of time value on the time-line as the providedInstant
object.static FileTime
fromMillis(long value)
Returns aFileTime
representing the given value in milliseconds.int
hashCode()
Computes a hash code for this file time.long
Returns the value at the given unit of granularity.Converts thisFileTime
object to anInstant
.long
toMillis()
Returns the value in milliseconds.toString()
Returns the string representation of thisFileTime
.
-
Method Details
-
from
Returns aFileTime
representing a value at the given unit of granularity.- Parameters:
value
- the value since the epoch (1970-01-01T00:00:00Z); can be negativeunit
- the unit of granularity to interpret the value- Returns:
- a
FileTime
representing the given value
-
fromMillis
Returns aFileTime
representing the given value in milliseconds.- Parameters:
value
- the value, in milliseconds, since the epoch (1970-01-01T00:00:00Z); can be negative- Returns:
- a
FileTime
representing the given value
-
from
Returns aFileTime
representing the same point of time value on the time-line as the providedInstant
object.- Parameters:
instant
- the instant to convert- Returns:
- a
FileTime
representing the same point on the time-line as the provided instant - Since:
- 1.8
-
to
Returns the value at the given unit of granularity.Conversion from a coarser granularity that would numerically overflow saturate to
Long.MIN_VALUE
if negative orLong.MAX_VALUE
if positive.- Parameters:
unit
- the unit of granularity for the return value- Returns:
- value in the given unit of granularity, since the epoch since the epoch (1970-01-01T00:00:00Z); can be negative
-
toMillis
public long toMillis()Returns the value in milliseconds.Conversion from a coarser granularity that would numerically overflow saturate to
Long.MIN_VALUE
if negative orLong.MAX_VALUE
if positive.- Returns:
- the value in milliseconds, since the epoch (1970-01-01T00:00:00Z)
-
toInstant
Converts thisFileTime
object to anInstant
.The conversion creates an
Instant
that represents the same point on the time-line as thisFileTime
.FileTime
can store points on the time-line further in the future and further in the past thanInstant
. Conversion from such further time points saturates toInstant.MIN
if earlier thanInstant.MIN
orInstant.MAX
if later thanInstant.MAX
.- Returns:
- an instant representing the same point on the time-line as
this
FileTime
object - Since:
- 1.8
-
equals
Tests thisFileTime
for equality with the given object.The result is
true
if and only if the argument is notnull
and is aFileTime
that represents the same time. This method satisfies the general contract of theObject.equals
method.- Overrides:
equals
in classObject
- Parameters:
obj
- the object to compare with- Returns:
true
if, and only if, the given object is aFileTime
that represents the same time- See Also:
Object.hashCode()
,HashMap
-
hashCode
public int hashCode()Computes a hash code for this file time.The hash code is based upon the value represented, and satisfies the general contract of the
Object.hashCode()
method.- Overrides:
hashCode
in classObject
- Returns:
- the hash-code value
- See Also:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
compareTo
Compares the value of twoFileTime
objects for order.- Specified by:
compareTo
in interfaceComparable<FileTime>
- Parameters:
other
- the otherFileTime
to be compared- Returns:
0
if thisFileTime
is equal toother
, a value less than 0 if thisFileTime
represents a time that is beforeother
, and a value greater than 0 if thisFileTime
represents a time that is afterother
-
toString
Returns the string representation of thisFileTime
. The string is returned in the ISO 8601 format:YYYY-MM-DDThh:mm:ss[.s+]Z
where "[.s+]
" represents a dot followed by one of more digits for the decimal fraction of a second. It is only present when the decimal fraction of a second is not zero. For example,FileTime.fromMillis(1234567890000L).toString()
yields"2009-02-13T23:31:30Z"
, andFileTime.fromMillis(1234567890123L).toString()
yields"2009-02-13T23:31:30.123Z"
.A
FileTime
is primarily intended to represent the value of a file's time stamp. Where used to represent extreme values, where the year is less than "0001
" or greater than "9999
" then this method deviates from ISO 8601 in the same manner as the XML Schema language. That is, the year may be expanded to more than four digits and may be negative-signed. If more than four digits then leading zeros are not present. The year before "0001
" is "-0001
".
-