![]() |
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 <C_CkZip.h> #include <C_CkZipEntry.h> void ChilkatSample(void) { BOOL success; HCkZip zip; HCkZipEntry entry; success = FALSE; success = FALSE; // Open an existing ZIP archive. zip = CkZip_Create(); success = CkZip_OpenZip(zip,"example.zip"); if (success == FALSE) { printf("%s\n",CkZip_lastErrorText(zip)); CkZip_Dispose(zip); return; } entry = CkZipEntry_Create(); // ------------------------------------------------------------ // Find the first .png file in the ZIP archive. success = CkZip_EntryMatching(zip,"*.png",entry); if (success == TRUE) { printf("Found PNG file:\n"); printf(" %s\n",CkZipEntry_fileName(entry)); printf("\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 = CkZip_EntryMatching(zip,"docs/*",entry); if (success == TRUE) { printf("First matching docs entry:\n"); printf(" %s\n",CkZipEntry_fileName(entry)); printf(" IsDirectory = %d\n",CkZipEntry_getIsDirectory(entry)); printf("\n"); } // ------------------------------------------------------------ // Find the first JSON file anywhere in the ZIP archive. success = CkZip_EntryMatching(zip,"*.json",entry); if (success == TRUE) { printf("Found JSON file:\n"); printf(" %s\n",CkZipEntry_fileName(entry)); printf("\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. CkZip_CloseZip(zip); printf("Done.\n"); CkZip_Dispose(zip); CkZipEntry_Dispose(entry); } |
||||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.