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 longgetNumberOfEntriesInCentralDirectory(ZipModel zipModel) booleanisDirectory(byte[] externalFileAttributes, String fileName) private longlocateOffsetOfEndOfCentralDirectory(RandomAccessFile randomAccessFile) private longlocateOffsetOfEndOfCentralDirectoryByReverseSeek(RandomAccessFile randomAccessFile) private List<ExtraDataRecord> parseExtraDataRecords(byte[] extraFieldBuf, int extraFieldLength) private AESExtraDataRecordreadAesExtraDataRecord(List<ExtraDataRecord> extraDataRecords, RawIO rawIO) private voidreadAesExtraDataRecord(AbstractFileHeader fileHeader, RawIO rawIO) readAllHeaders(RandomAccessFile zip4jRaf, Zip4jConfig zip4jConfig) private CentralDirectoryreadCentralDirectory(RandomAccessFile zip4jRaf, RawIO rawIO, Charset charset) readDataDescriptor(InputStream inputStream, boolean isZip64Format) private EndOfCentralDirectoryRecordreadEndOfCentralDirectoryRecord(RandomAccessFile zip4jRaf, RawIO rawIO, Zip4jConfig zip4jConfig) private List<ExtraDataRecord> readExtraDataRecords(InputStream inputStream, int extraFieldLength) private voidreadExtraDataRecords(InputStream inputStream, LocalFileHeader localFileHeader) private List<ExtraDataRecord> readExtraDataRecords(RandomAccessFile zip4jRaf, int extraFieldLength) private voidreadExtraDataRecords(RandomAccessFile zip4jRaf, FileHeader fileHeader) readLocalFileHeader(InputStream inputStream, Charset charset) private Zip64EndOfCentralDirectoryRecordreadZip64EndCentralDirRec(RandomAccessFile zip4jRaf, RawIO rawIO) readZip64EndOfCentralDirectoryLocator(RandomAccessFile zip4jRaf, RawIO rawIO, long offsetEndOfCentralDirectoryRecord) private Zip64ExtendedInforeadZip64ExtendedInfo(List<ExtraDataRecord> extraDataRecords, RawIO rawIO, long uncompressedSize, long compressedSize, long offsetLocalHeader, int diskNumberStart) private voidreadZip64ExtendedInfo(FileHeader fileHeader, RawIO rawIO) private voidreadZip64ExtendedInfo(LocalFileHeader localFileHeader, RawIO rawIO) private StringreadZipComment(RandomAccessFile raf, int commentLength, Charset charset) private voidseekInCurrentPart(RandomAccessFile randomAccessFile, long pos) private voidsetFilePointerToReadZip64EndCentralDirLoc(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
-