org.apache.commons.compress.archivers.zip
Class ZipUtil

java.lang.Object
  extended by org.apache.commons.compress.archivers.zip.ZipUtil

public abstract class ZipUtil
extends Object

Utility class for handling DOS and Java time conversions.


Constructor Summary
ZipUtil()
           
 
Method Summary
static long adjustToLong(int i)
          Assumes a negative integer really is a positive integer that has wrapped around and re-creates the original value.
static long dosToJavaTime(long dosTime)
          Converts DOS time to Java time (number of milliseconds since epoch).
static Date fromDosTime(ZipLong zipDosTime)
          Convert a DOS date/time field to a Date object.
static byte[] reverse(byte[] array)
          Reverses a byte[] array.
static int signedByteToUnsignedInt(byte b)
          Converts a signed byte into an unsigned integer representation (e.g., -1 becomes 255).
static ZipLong toDosTime(Date time)
          Convert a Date object to a DOS date/time field.
static byte[] toDosTime(long t)
          Convert a Date object to a DOS date/time field.
static byte unsignedIntToSignedByte(int i)
          Converts an unsigned integer to a signed byte (e.g., 255 becomes -1).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ZipUtil

public ZipUtil()
Method Detail

toDosTime

public static ZipLong toDosTime(Date time)
Convert a Date object to a DOS date/time field.

Parameters:
time - the Date to convert
Returns:
the date as a ZipLong

toDosTime

public static byte[] toDosTime(long t)
Convert a Date object to a DOS date/time field.

Stolen from InfoZip's fileio.c

Parameters:
t - number of milliseconds since the epoch
Returns:
the date as a byte array

adjustToLong

public static long adjustToLong(int i)
Assumes a negative integer really is a positive integer that has wrapped around and re-creates the original value.

Parameters:
i - the value to treat as unsigned int.
Returns:
the unsigned int as a long.

reverse

public static byte[] reverse(byte[] array)
Reverses a byte[] array. Reverses in-place (thus provided array is mutated), but also returns same for convenience.

Parameters:
array - to reverse (mutated in-place, but also returned for convenience).
Returns:
the reversed array (mutated in-place, but also returned for convenience).
Since:
1.5

signedByteToUnsignedInt

public static int signedByteToUnsignedInt(byte b)
Converts a signed byte into an unsigned integer representation (e.g., -1 becomes 255).

Parameters:
b - byte to convert to int
Returns:
int representation of the provided byte
Since:
1.5

unsignedIntToSignedByte

public static byte unsignedIntToSignedByte(int i)
Converts an unsigned integer to a signed byte (e.g., 255 becomes -1).

Parameters:
i - integer to convert to byte
Returns:
byte representation of the provided int
Throws:
IllegalArgumentException - if the provided integer is not inside the range [0,255].
Since:
1.5

fromDosTime

public static Date fromDosTime(ZipLong zipDosTime)
Convert a DOS date/time field to a Date object.

Parameters:
zipDosTime - contains the stored DOS time.
Returns:
a Date instance corresponding to the given time.

dosToJavaTime

public static long dosToJavaTime(long dosTime)
Converts DOS time to Java time (number of milliseconds since epoch).



Copyright © 2013 The Apache Software Foundation. All Rights Reserved.