HasMoreData Property
Shows whether or not there is more data in the bzip2 archive.
Syntax
bzip2.getHasMoreData([callback])
Default Value
FALSE
Callback
The 'callback' parameter specifies a function which will be called when the operation completes (or an error is encountered). If the 'callback' parameter is not specified, then the method will block and will not return until the operation completes (or an error is encountered).
The callback for the getHasMoreData([callback]) method is defined as:
function(err, data){ }
'err' is the error that occurred. If there was no error, then 'err' is 'null'.
'data' is the value returned by the method.
The callback for the setHasMoreData([callback]) method is defined as:
function(err){ }
'err' is the error that occurred. If there was no error, then 'err' is 'null'.
'err' has 2 properties which hold detailed information:
err.code err.message
Remarks
The bzip2 format allows multiple bzip2 data members to be concatenated into a single file. However, due to the nature of the algorithm it is impossible to determine the number of data members until after the entire archive has been decompressed. The HasMoreData property can be used to cycle through the archive and extract each file.
Simply set the ArchiveFile and ExtractToPath properties, then call Extract as long as the class has available data.
Note: the class will not update FileDecompressedName unless you manually set FileDecompressedName on each loop before calling Extract.
Example (Extracting Multiple Files)
ZipControl.ArchiveFile =
"c:\temp.bz2"
ZipControl.ExtractToPath =
"c:\extracted\"
Do
//here you may set the file name in <a href="Bzip2_p_FileDecompressedName.htm">FileDecompressedName</a> prior to extraction
ZipControl.Extract()
While ZipControl.HasMoreData
This property is read-only.
Data Type
Boolean