![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java JavaScript Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Unzip a ZIP Entry Directly into a BinData Object Using ZipEntry.UnzipToBdSee more Zip Examples This example demonstrates how to use the The entry contents are uncompressed entirely in memory without creating a file on disk. This is useful when:
The example opens a ZIP archive, locates a PDF entry, inflates it into a Suppose the ZIP archive contains: The entry is uncompressed directly into memory before optionally being saved to:
Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoZip Variant vEntry Handle hoEntry Variant vPdfData Handle hoPdfData String sTemp1 Integer iTemp1 Move False To iSuccess Get Create (RefClass(cComChilkatZip)) To hoZip If (Not(IsComObjectCreated(hoZip))) Begin Send CreateComObject of hoZip End // Open an existing ZIP archive. Get ComOpenZip Of hoZip "qa_data/zips/documents.zip" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoZip To sTemp1 Showln sTemp1 Procedure_Return End // Locate the PDF entry within the ZIP archive. Get Create (RefClass(cComChilkatZipEntry)) To hoEntry If (Not(IsComObjectCreated(hoEntry))) Begin Send CreateComObject of hoEntry End Get pvComObject of hoEntry to vEntry Get ComEntryOf Of hoZip "docs/report.pdf" vEntry To iSuccess If (iSuccess = False) Begin Showln "ZIP entry not found." Send ComCloseZip To hoZip Procedure_Return End // ------------------------------------------------------------ // Inflate the ZIP entry directly into a BinData object. // // The uncompressed bytes are stored entirely in memory. // Get Create (RefClass(cComChilkatBinData)) To hoPdfData If (Not(IsComObjectCreated(hoPdfData))) Begin Send CreateComObject of hoPdfData End Get pvComObject of hoPdfData to vPdfData Get ComUnzipToBd Of hoEntry vPdfData To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoEntry To sTemp1 Showln sTemp1 Procedure_Return End Get ComNumBytes Of hoPdfData To iTemp1 Showln "Uncompressed size = " iTemp1 Showln "" // ------------------------------------------------------------ // Optionally save the uncompressed bytes to a file. // Get ComWriteFile Of hoPdfData "qa_output/report.pdf" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoPdfData To sTemp1 Showln sTemp1 Procedure_Return End Send ComCloseZip To hoZip Showln "PDF extracted successfully." End_Procedure |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.