org.apache.tools.zipClass AbstractUnicodeExtraField
- java.lang.Object
- org.apache.tools.zip.AbstractUnicodeExtraField
- All Implemented Interfaces:
- ZipExtraField
- Direct Known Subclasses:
- UnicodeCommentExtraField, UnicodePathExtraField
public abstract class AbstractUnicodeExtraField extends java.lang.Object implements ZipExtraFieldA common base class for Unicode extra information extra fields.
Constructor Summary
Constructors Modifier Constructor and Description protected
AbstractUnicodeExtraField()
protected
AbstractUnicodeExtraField(java.lang.String text, byte[] bytes)
Assemble as unicode extension from the name/comment and encoding of the original zip entry.protected
AbstractUnicodeExtraField(java.lang.String text, byte[] bytes, int off, int len)
Assemble as unicode extension from the name/comment and encoding of the original zip entry.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description byte[]
getCentralDirectoryData()
The actual data to put into central directory - without Header-ID or length specifier.ZipShort
getCentralDirectoryLength()
Length of the extra field in the central directory - without Header-ID or length specifier.byte[]
getLocalFileDataData()
The actual data to put into local file data - without Header-ID or length specifier.ZipShort
getLocalFileDataLength()
Length of the extra field in the local file data - without Header-ID or length specifier.long
getNameCRC32()
byte[]
getUnicodeName()
void
parseFromLocalFileData(byte[] buffer, int offset, int length)
Populate data from this array as if it was in local file data.void
setNameCRC32(long nameCRC32)
void
setUnicodeName(byte[] unicodeName)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.tools.zip.ZipExtraField
getHeaderId
Constructor Detail
AbstractUnicodeExtraField
protected AbstractUnicodeExtraField()
AbstractUnicodeExtraField
protected AbstractUnicodeExtraField(java.lang.String text, byte[] bytes, int off, int len)Assemble as unicode extension from the name/comment and encoding of the original zip entry.
- Parameters:
text
- The file name or comment.bytes
- The encoded of the filename or comment in the zip file.off
- The offset of the encoded filename or comment inbytes
.len
- The length of the encoded filename or comment inbytes
.
AbstractUnicodeExtraField
protected AbstractUnicodeExtraField(java.lang.String text, byte[] bytes)Assemble as unicode extension from the name/comment and encoding of the original zip entry.
- Parameters:
text
- The file name or comment.bytes
- The encoded of the filename or comment in the zip file.
Method Detail
getNameCRC32
public long getNameCRC32()
- Returns:
- The CRC32 checksum of the filename or comment as encoded in the central directory of the zip file.
setNameCRC32
public void setNameCRC32(long nameCRC32)
- Parameters:
nameCRC32
- The CRC32 checksum of the filename as encoded in the central directory of the zip file to set.
getUnicodeName
public byte[] getUnicodeName()
- Returns:
- The utf-8 encoded name.
setUnicodeName
public void setUnicodeName(byte[] unicodeName)
- Parameters:
unicodeName
- The utf-8 encoded name to set.
getCentralDirectoryData
public byte[] getCentralDirectoryData()The actual data to put into central directory - without Header-ID or length specifier.
- Specified by:
getCentralDirectoryData
in interfaceZipExtraField
- Returns:
- the data
getCentralDirectoryLength
public ZipShort getCentralDirectoryLength()Length of the extra field in the central directory - without Header-ID or length specifier.
- Specified by:
getCentralDirectoryLength
in interfaceZipExtraField
- Returns:
- the length of the field in the central directory
getLocalFileDataData
public byte[] getLocalFileDataData()The actual data to put into local file data - without Header-ID or length specifier.
- Specified by:
getLocalFileDataData
in interfaceZipExtraField
- Returns:
- the data
getLocalFileDataLength
public ZipShort getLocalFileDataLength()Length of the extra field in the local file data - without Header-ID or length specifier.
- Specified by:
getLocalFileDataLength
in interfaceZipExtraField
- Returns:
- the length of the field in the local file data
parseFromLocalFileData
public void parseFromLocalFileData(byte[] buffer, int offset, int length) throws java.util.zip.ZipExceptionPopulate data from this array as if it was in local file data.
- Specified by:
parseFromLocalFileData
in interfaceZipExtraField
- Parameters:
buffer
- an array of bytesoffset
- the start offsetlength
- the number of bytes in the array from offset- Throws:
java.util.zip.ZipException
- on error