Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Append File and Rename within ZipHow to append an additional file to a .zip and rename it within the .zip. use chilkat; $zip = new chilkat::CkZip(); # Any string unlocks the component for the 1st 30-days. $success = $zip->UnlockComponent("Anything for 30-day trial"); if ($success != 1) { print $zip->lastErrorText() . "\n"; exit; } # Open an existing .zip. # Note: Opening a zip does not read the entire zip into memory. # It simply opens the zip and makes it ready for unzipping # or retrieving information and/or data. $success = $zip->OpenZip("a.zip"); if ($success != 1) { print $zip->lastErrorText() . "\n"; exit; } # Save the current number of entries. $numEntries = $zip->get_NumEntries(); # Append a new file to the .zip. # The new entry is at index numEntries (indexing begins at 0). # Note: The AppendOneFileOrDir simply adds a reference to the # file to the zip object. The file is not actually read # or physically added to the .zip file until the WriteZip or # WriteZipAndClose method is called. $success = $zip->AppendOneFileOrDir("hamlet.xml"); if ($success != 1) { print $zip->lastErrorText() . "\n"; exit; } # Get the entry we just added: $entry = $zip->GetEntryByIndex($numEntries); # Change the filename. # The zip component remembers the file referenced in the filesystem. # When the zip is written, the "hamlet.xml" file is read and # compressed, but the filename within the zip will be "shakespearePlay.xml". $entry->put_FileName("shakespearePlay.xml"); # Write the .zip # The Chilkat Zip component always writes to a temporary file # first. This is to ensure that (in cases like this), if something # goes wrong we don't lose the original .zip. If the write # finishes without error, it is moved to the destination # file, thus overwriting it. The TempDir property controls # the directory where the temp zip is written. $success = $zip->WriteZipAndClose(); if ($success != 1) { print $zip->lastErrorText() . "\n"; exit; } |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.