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 Zip
How to append an additional file to a .zip and rename it within the .zip. Dim zip As New Chilkat.Zip() Dim success As Boolean ' Any string unlocks the component for the 1st 30-days. success = zip.UnlockComponent("Anything for 30-day trial") If (success <> true) Then MsgBox(zip.LastErrorText) Exit Sub End If ' 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 <> true) Then MsgBox(zip.LastErrorText) Exit Sub End If ' Save the current number of entries. Dim numEntries As Long numEntries = zip.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. Dim saveExtraPath As Boolean saveExtraPath = false success = zip.AppendOneFileOrDir("hamlet.xml",saveExtraPath) If (success <> true) Then MsgBox(zip.LastErrorText) Exit Sub End If ' Get the entry we just added: Dim entry As Chilkat.ZipEntry 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.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 <> true) Then MsgBox(zip.LastErrorText) Exit Sub End If |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.