Class TimeUtils
java.lang.Object
org.apache.commons.compress.utils.TimeUtils
Utility class for handling time-related types and conversions.
Understanding UNIX vs NTFS timestamps:
- A UNIX timestamp is a primitive long starting at the UNIX Epoch on January 1st, 1970 at Coordinated Universal Time (UTC)
- An NTFS timestamp is a file time is a 64-bit value that represents the number of 100-nanosecond intervals that have elapsed since 12:00 A.M. January 1, 1601 Coordinated Universal Time (UTC).
- Since:
- 1.23
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final longThe amount of 100-nanosecond intervals in one millisecond.(package private) static final long -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivatePrivate constructor to prevent instantiation of this utility class. -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanisUnixTime(long seconds) Deprecated.static booleanisUnixTime(FileTime time) Deprecated.useFileTimes.isUnixTime(FileTime)static DatentfsTimeToDate(long ntfsTime) Deprecated.UseFileTimes.ntfsTimeToDate(long).static FileTimentfsTimeToFileTime(long ntfsTime) Deprecated.UseFileTimes.ntfsTimeToFileTime(long).static DateDeprecated.UseFileTimes.toDate(FileTime).static FileTimetoFileTime(Date date) Deprecated.UseFileTimes.toFileTime(Date).static longtoNtfsTime(long javaTime) Deprecated.UseFileTimes.toNtfsTime(long)static longtoNtfsTime(FileTime fileTime) Deprecated.UseFileTimes.toNtfsTime(FileTime).static longtoNtfsTime(Date date) Deprecated.UseFileTimes.toNtfsTime(Date).static longtoUnixTime(FileTime fileTime) ConvertsFileTimeto standard UNIX time.static FileTimetruncateToHundredNanos(FileTime fileTime) Truncates a FileTime to 100-nanosecond precision.static FileTimeunixTimeToFileTime(long time) Deprecated.UseFileTimes.fromUnixTime(long)
-
Field Details
-
HUNDRED_NANOS_PER_MILLISECOND
static final long HUNDRED_NANOS_PER_MILLISECONDThe amount of 100-nanosecond intervals in one millisecond. -
WINDOWS_EPOCH_OFFSET
static final long WINDOWS_EPOCH_OFFSETWindows File TimesA file time is a 64-bit value that represents the number of 100-nanosecond intervals that have elapsed since 12:00 A.M. January 1, 1601 Coordinated Universal Time (UTC). This is the offset of Windows time 0 to UNIX epoch in 100-nanosecond intervals.
- See Also:
-
-
Constructor Details
-
TimeUtils
private TimeUtils()Private constructor to prevent instantiation of this utility class.
-
-
Method Details
-
isUnixTime
Deprecated.useFileTimes.isUnixTime(FileTime)Tests whether a FileTime can be safely represented in the standard UNIX time.TODO ? If the FileTime is null, this method always 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.
-
isUnixTime
Deprecated.UseFileTimes.isUnixTime(long)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.
-
ntfsTimeToDate
Deprecated.UseFileTimes.ntfsTimeToDate(long).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
Deprecated.UseFileTimes.ntfsTimeToFileTime(long).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:
-
toDate
Deprecated.UseFileTimes.toDate(FileTime).- Parameters:
fileTime- the file time to be converted.- Returns:
- a
Datewhich corresponds to the supplied time, ornullif the time isnull. - See Also:
-
toFileTime
Deprecated.UseFileTimes.toFileTime(Date).- Parameters:
date- the date to be converted.- Returns:
- a
FileTimewhich corresponds to the supplied date, ornullif the date isnull. - See Also:
-
toNtfsTime
Deprecated.UseFileTimes.toNtfsTime(Date).Converts aDateto NTFS time.- Parameters:
date- the Date.- Returns:
- the NTFS time.
-
toNtfsTime
Deprecated.UseFileTimes.toNtfsTime(FileTime).Converts aFileTimeto NTFS time (100-nanosecond units since 1 January 1601).- Parameters:
fileTime- the FileTime.- Returns:
- the NTFS time in 100-nanosecond units.
- See Also:
-
toNtfsTime
Deprecated.UseFileTimes.toNtfsTime(long)Converts Java time (milliseconds since Epoch) to NTFS time.- Parameters:
javaTime- the Java time.- Returns:
- the NTFS time.
-
toUnixTime
ConvertsFileTimeto standard UNIX time.- Parameters:
fileTime- the original FileTime.- Returns:
- the UNIX timestamp.
-
truncateToHundredNanos
Truncates a FileTime to 100-nanosecond precision.- Parameters:
fileTime- the FileTime to be truncated.- Returns:
- the truncated FileTime.
-
unixTimeToFileTime
Deprecated.UseFileTimes.fromUnixTime(long)Converts standard UNIX time (in seconds, UTC/GMT) toFileTime.- Parameters:
time- UNIX timestamp (in seconds, UTC/GMT).- Returns:
- the corresponding FileTime.
-
FileTimes.isUnixTime(long)