Structures for Zip Files
Previous  Top  Next

A Zip File consists of several parts:

·A possible Header that could be the code of a self-extracting Zip File program or nothing at all.  
·This is followed by one or more File Entries,  
·which always consist of a Local File Record,  
·which is possibly followed by the (compressed or stored) Data of the File Entry,  
·which is possibly followed by a Data Descriptor Record, which is currently not supported by XbZLib!  
·At the end of the Zip File is a Central Directory,  
·which consists of one or more Central Directory Records (one for each Local File Record or File Entry),  
·which is possibly followed by a Digital Signature, which is currently not supported by XbZLib!  
·which is possibly followed by a Zip64 End of Central Directory Record, which is currently not supported by XbZLib!  
·which is possibly followed by a Zip64 End of Central Directory Locator, which is currently not supported by XbZLib!  
·which is always concluded by an End of Central Directory Record.  

The three different Record Types that are handled by the XbZLib DLL are implemented as objects of three different Classes, which are all derived from Phil Ide's Smart Structures implementation. The following Structure Classes are used by the XbZLibZip Class and can be used to manipulate Zip Files and Zip File Entries:

ZipLocalFileRecord
-->
Local File Record
ZipCentralDirectoryRecord
-->
Central Directory Record
ZipEndOfCentralDirectoryRecord
-->
End of Central Directory Record (or the Central Directory itself)
 

A future version of XbZLib may also implement one or more of the other four possible Structures: the Data Descriptor Record, the Digital Signature, the Zip64 End of Central Directory Record, and/or the Zip64 End of Central Directory Locator.