![]() |
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
(C++) Iterate Over ZIP Entries Using EntryAt This example demonstrates how to use the The This is useful for:
Suppose the ZIP archive contains: The example loops through all ZIP entries and prints information about each entry. Note: This example requires Chilkat v11.0.0 or greater.
#include <CkZip.h> #include <CkZipEntry.h> void ChilkatSample(void) { bool success = false; success = false; // Open an existing ZIP archive. CkZip zip; success = zip.OpenZip("example.zip"); if (success == false) { std::cout << zip.lastErrorText() << "\r\n"; return; } // Get the total number of entries in the ZIP archive. int numEntries = zip.get_NumEntries(); std::cout << "Number of ZIP entries = " << numEntries << "\r\n"; // Create a ZipEntry object that will be reused // for each entry retrieved by EntryAt. CkZipEntry entry; // Iterate over all ZIP entries. int i = 0; while (i < numEntries) { // Retrieve the entry at index i. success = zip.EntryAt(i,entry); if (success == false) { std::cout << zip.lastErrorText() << "\r\n"; return; } std::cout << "Entry " << i << "\r\n"; std::cout << " FileName: " << entry.fileName() << "\r\n"; std::cout << " Uncompressed Length: " << entry.get_UncompressedLength() << "\r\n"; std::cout << " Compressed Length: " << entry.get_CompressedLength() << "\r\n"; std::cout << "" << "\r\n"; i = i + 1; } // Sample output: // // Entry 0 // FileName: docs/readme.txt // Uncompressed Length: 1204 // Compressed Length: 512 // // Entry 1 // FileName: images/logo.png // Uncompressed Length: 84211 // Compressed Length: 84102 // zip.CloseZip(); std::cout << "Done." << "\r\n"; } |
||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.