Package net.lingala.zip4j.headers
Class HeaderReader
java.lang.Object
net.lingala.zip4j.headers.HeaderReader
Helper class to read header information for the zip file
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate long
getNumberOfEntriesInCentralDirectory
(ZipModel zipModel) boolean
isDirectory
(byte[] externalFileAttributes, String fileName) private long
locateOffsetOfEndOfCentralDirectory
(RandomAccessFile randomAccessFile) private long
locateOffsetOfEndOfCentralDirectoryByReverseSeek
(RandomAccessFile randomAccessFile) private List
<ExtraDataRecord> parseExtraDataRecords
(byte[] extraFieldBuf, int extraFieldLength) private AESExtraDataRecord
readAesExtraDataRecord
(List<ExtraDataRecord> extraDataRecords, RawIO rawIO) private void
readAesExtraDataRecord
(AbstractFileHeader fileHeader, RawIO rawIO) readAllHeaders
(RandomAccessFile zip4jRaf, Zip4jConfig zip4jConfig) private CentralDirectory
readCentralDirectory
(RandomAccessFile zip4jRaf, RawIO rawIO, Charset charset) readDataDescriptor
(InputStream inputStream, boolean isZip64Format) private EndOfCentralDirectoryRecord
readEndOfCentralDirectoryRecord
(RandomAccessFile zip4jRaf, RawIO rawIO, Zip4jConfig zip4jConfig) private List
<ExtraDataRecord> readExtraDataRecords
(InputStream inputStream, int extraFieldLength) private void
readExtraDataRecords
(InputStream inputStream, LocalFileHeader localFileHeader) private List
<ExtraDataRecord> readExtraDataRecords
(RandomAccessFile zip4jRaf, int extraFieldLength) private void
readExtraDataRecords
(RandomAccessFile zip4jRaf, FileHeader fileHeader) readLocalFileHeader
(InputStream inputStream, Charset charset) private Zip64EndOfCentralDirectoryRecord
readZip64EndCentralDirRec
(RandomAccessFile zip4jRaf, RawIO rawIO) readZip64EndOfCentralDirectoryLocator
(RandomAccessFile zip4jRaf, RawIO rawIO, long offsetEndOfCentralDirectoryRecord) private Zip64ExtendedInfo
readZip64ExtendedInfo
(List<ExtraDataRecord> extraDataRecords, RawIO rawIO, long uncompressedSize, long compressedSize, long offsetLocalHeader, int diskNumberStart) private void
readZip64ExtendedInfo
(FileHeader fileHeader, RawIO rawIO) private void
readZip64ExtendedInfo
(LocalFileHeader localFileHeader, RawIO rawIO) private String
readZipComment
(RandomAccessFile raf, int commentLength, Charset charset) private void
seekInCurrentPart
(RandomAccessFile randomAccessFile, long pos) private void
setFilePointerToReadZip64EndCentralDirLoc
(RandomAccessFile zip4jRaf, long offsetEndOfCentralDirectoryRecord)
-
Field Details
-
zipModel
-
rawIO
-
intBuff
private final byte[] intBuff
-
-
Constructor Details
-
HeaderReader
public HeaderReader()
-
-
Method Details
-
readAllHeaders
public ZipModel readAllHeaders(RandomAccessFile zip4jRaf, Zip4jConfig zip4jConfig) throws IOException - Throws:
IOException
-
readEndOfCentralDirectoryRecord
private EndOfCentralDirectoryRecord readEndOfCentralDirectoryRecord(RandomAccessFile zip4jRaf, RawIO rawIO, Zip4jConfig zip4jConfig) throws IOException - Throws:
IOException
-
readCentralDirectory
private CentralDirectory readCentralDirectory(RandomAccessFile zip4jRaf, RawIO rawIO, Charset charset) throws IOException - Throws:
IOException
-
readExtraDataRecords
private void readExtraDataRecords(RandomAccessFile zip4jRaf, FileHeader fileHeader) throws IOException - Throws:
IOException
-
readExtraDataRecords
private void readExtraDataRecords(InputStream inputStream, LocalFileHeader localFileHeader) throws IOException - Throws:
IOException
-
readExtraDataRecords
private List<ExtraDataRecord> readExtraDataRecords(RandomAccessFile zip4jRaf, int extraFieldLength) throws IOException - Throws:
IOException
-
readExtraDataRecords
private List<ExtraDataRecord> readExtraDataRecords(InputStream inputStream, int extraFieldLength) throws IOException - Throws:
IOException
-
parseExtraDataRecords
-
readZip64EndOfCentralDirectoryLocator
private Zip64EndOfCentralDirectoryLocator readZip64EndOfCentralDirectoryLocator(RandomAccessFile zip4jRaf, RawIO rawIO, long offsetEndOfCentralDirectoryRecord) throws IOException - Throws:
IOException
-
readZip64EndCentralDirRec
private Zip64EndOfCentralDirectoryRecord readZip64EndCentralDirRec(RandomAccessFile zip4jRaf, RawIO rawIO) throws IOException - Throws:
IOException
-
readZip64ExtendedInfo
-
readZip64ExtendedInfo
private void readZip64ExtendedInfo(LocalFileHeader localFileHeader, RawIO rawIO) throws ZipException - Throws:
ZipException
-
readZip64ExtendedInfo
private Zip64ExtendedInfo readZip64ExtendedInfo(List<ExtraDataRecord> extraDataRecords, RawIO rawIO, long uncompressedSize, long compressedSize, long offsetLocalHeader, int diskNumberStart) -
setFilePointerToReadZip64EndCentralDirLoc
private void setFilePointerToReadZip64EndCentralDirLoc(RandomAccessFile zip4jRaf, long offsetEndOfCentralDirectoryRecord) throws IOException - Throws:
IOException
-
readLocalFileHeader
public LocalFileHeader readLocalFileHeader(InputStream inputStream, Charset charset) throws IOException - Throws:
IOException
-
readDataDescriptor
public DataDescriptor readDataDescriptor(InputStream inputStream, boolean isZip64Format) throws IOException - Throws:
IOException
-
readAesExtraDataRecord
- Throws:
ZipException
-
readAesExtraDataRecord
private AESExtraDataRecord readAesExtraDataRecord(List<ExtraDataRecord> extraDataRecords, RawIO rawIO) throws ZipException - Throws:
ZipException
-
getNumberOfEntriesInCentralDirectory
-
locateOffsetOfEndOfCentralDirectory
private long locateOffsetOfEndOfCentralDirectory(RandomAccessFile randomAccessFile) throws IOException - Throws:
IOException
-
locateOffsetOfEndOfCentralDirectoryByReverseSeek
private long locateOffsetOfEndOfCentralDirectoryByReverseSeek(RandomAccessFile randomAccessFile) throws IOException - Throws:
IOException
-
seekInCurrentPart
- Throws:
IOException
-
readZipComment
-
isDirectory
-