The Gzip class implements a gzip compressor and decompressor. It is compliant with RFC 1952 and compatible with the UNIX gzip and gunzip utilities.
The gzip file format is typically used only to archive a single file. Accordingly, the operation of the class is simpler than that of the other classs.
To compress with the class, set archive_file to the name of the gzip file to be created, and file_decompressed_name to the name of the file to be compressed. Finally, invoke compress. To extract the file, first set archive_file. file_decompressed_name may then be set; if not, it will automatically be set from the gzip file headers. Finally, invoke the extract or compress method.
.tar.gz files may be created or extracted in one step by using the Tar class. See the documentation for Tar for more details.
Example (Creating a Gzip File)
ZipControl.ArchiveFile = "c:\test.gz" ZipControl.FileDecompressedName = "c:\test.txt" ZipControl.Compress()Example (Extracting from a Gzip File)
ZipControl.ArchiveFile = "c:\test.gz" ZipControl.Scan() ZipControl.FileDecompressedName = "c:\test.txt" ZipControl.Extract()
The following is the full list of the properties of the class with short descriptions. Click on the links for further details.
|archive_file||The name of the zip, gzip, tar, or jar archive.|
|compression_level||The compression level to use.|
|compression_method||The compression method for the class to use.|
|extract_to_path||A base path to decompress to.|
|file_compressed_date||The date and time of the compressed file, as stored within the gzip archive.|
|file_compressed_name||Filename, as stored inside of the archive.|
|file_decompressed_name||File name to decompress to, or compress from.|
|file_decompressed_size||Gets the size of the file, as decompressed outside the archive.|
|file_input_data||The data of the file to be compressed.|
|gzip_data||(Decompression only) The gzip file contents as a byte array.|
|has_more_data||Shows whether or not there is more data in the gzip archive.|
The following is the full list of the methods of the class with short descriptions. Click on the links for further details.
|abort||Aborts the current operation.|
|append||Adds specified file to an existing archive.|
|compress||Creates the compressed gzip archive.|
|config||Sets or retrieves a configuration setting.|
|extract||Extracts the compressed file from the gzip archive.|
|extract_all||Extracts all files from the compressed archive.|
|reset||Resets the class.|
|scan||Scans the compressed archive.|
The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.
|on_begin_file||Fired before a file is processed.|
|on_end_file||Fired after a file is processed.|
|on_error||Information about non-fatal errors.|
|on_overwrite||Fired whenever a file exists and may be overwritten.|
|on_progress||Fired as progress is made.|
The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.
|FileComment||Holds the comment associated with the archive.|
|PreserveModifiedTime||Whether or not to preserve the original modified time on extracted files.|
|WriteToProgressEvent||Whether or not to write data to the Progress Event.|
|BuildInfo||Information about the product's build.|
|CodePage||The system code page used for Unicode to Multibyte translations.|
|LicenseInfo||Information about the current license.|
|ProcessIdleEvents||Whether the class uses its internal event loop to process events when the main thread is idle.|
|SelectWaitMillis||The length of time in milliseconds the class will wait when DoEvents is called if there are no events to process.|
|UseInternalSecurityAPI||Tells the class whether or not to use the system security libraries or an internal implementation.|