![]() |
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
(Tcl) Iterate Through ZIP Entries Using EntryAt and ZipEntry.GetNextSee more Zip ExamplesThis example demonstrates how to iterate through all entries in a ZIP archive using:
The example prints each ZIP entry's stored filename and whether the entry is a file or directory. This approach is useful when sequentially processing ZIP entries without repeatedly calling Suppose the ZIP archive contains: The example iterates through each entry in the order stored within the ZIP archive.
load ./chilkat.dll set success 0 set zip [new_CkZip] # Open an existing ZIP archive. set success [CkZip_OpenZip $zip "c:/temp/example.zip"] if {$success == 0} then { puts [CkZip_lastErrorText $zip] delete_CkZip $zip exit } # A ZIP archive may contain zero entries. if {[CkZip_get_NumEntries $zip] == 0} then { puts "The ZIP archive is empty." CkZip_CloseZip $zip delete_CkZip $zip exit } # ------------------------------------------------------------ # Get the first ZIP entry. # # EntryAt(0,entry) initializes the ZipEntry object so that # it represents the first entry in the ZIP archive. # set entry [new_CkZipEntry] set success [CkZip_EntryAt $zip 0 $entry] if {$success == 0} then { puts [CkZip_lastErrorText $zip] delete_CkZip $zip delete_CkZipEntry $entry exit } # ------------------------------------------------------------ # Iterate through all ZIP entries. # # GetNext updates the same ZipEntry object so that it # represents the next entry in the ZIP archive. # while {$success == 1} { if {[CkZipEntry_get_IsDirectory $entry] == 1} then { puts "{[Directory] }[CkZipEntry_fileName $entry]" } else { puts "{[File] }[CkZipEntry_fileName $entry]" } # Advance to the next entry. set success [CkZipEntry_GetNext $entry] } CkZip_CloseZip $zip puts "Done." delete_CkZip $zip delete_CkZipEntry $entry |
||||
© 2000-2026 Chilkat Software, Inc. All Rights Reserved.