![]() |
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++) Find ZIP Entries Matching a Wildcard Pattern Using EntryMatchingSee more Zip Examples This example demonstrates how to use the The wildcard character This method is useful for:
Suppose the ZIP archive contains: Notice that the ZIP archive contains an explicit directory entry named When searching with the pattern The example searches for:
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; } CkZipEntry entry; // ------------------------------------------------------------ // Find the first .png file in the ZIP archive. success = zip.EntryMatching("*.png",entry); if (success == true) { std::cout << "Found PNG file:" << "\r\n"; std::cout << " " << entry.fileName() << "\r\n"; std::cout << "" << "\r\n"; } // ------------------------------------------------------------ // Find the first entry beneath the docs directory. // // Note: ZIP archives may optionally contain explicit directory // entries such as "docs/" in addition to file entries. // Therefore, the first matching entry could be the directory // itself rather than a file contained within the directory. success = zip.EntryMatching("docs/*",entry); if (success == true) { std::cout << "First matching docs entry:" << "\r\n"; std::cout << " " << entry.fileName() << "\r\n"; std::cout << " IsDirectory = " << entry.get_IsDirectory() << "\r\n"; std::cout << "" << "\r\n"; } // ------------------------------------------------------------ // Find the first JSON file anywhere in the ZIP archive. success = zip.EntryMatching("*.json",entry); if (success == true) { std::cout << "Found JSON file:" << "\r\n"; std::cout << " " << entry.fileName() << "\r\n"; std::cout << "" << "\r\n"; } // ------------------------------------------------------------ // The matching is performed against the full stored ZIP path. // For example: // // docs/readme.txt // images/logo.png // data/config/settings.json // // The wildcard '*' matches zero or more characters. zip.CloseZip(); std::cout << "Done." << "\r\n"; } |
||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.