Sample code for 30+ languages & platforms
Ruby Requires Chilkat v11.0.0+

Change a Filename before Unzipping

See more Zip Examples

How to open a zip and modify the filename of one or more files within the zip before unzipping.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

#  This example requires the Chilkat API to have been previously unlocked.
#  See Global Unlock Sample for sample code.

zip = Chilkat::CkZip.new()

success = zip.OpenZip("test.zip")
if (success == false)
    print zip.lastErrorText() + "\n";
    exit
end

entry = Chilkat::CkZipEntry.new()

success = zip.EntryOf("hamlet.xml",entry)
if (success == false)
    print zip.lastErrorText() + "\n";
    exit
end

entry.put_FileName("hamlet2.xml")

success = zip.EntryOf("helloWorld.pl",entry)
if (success == false)
    print zip.lastErrorText() + "\n";
    exit
end

entry.put_FileName("hw.pl")

#  Now unzip to the "test" subdirectory, under our current
#  working directory:
numFilesUnzipped = zip.Unzip("test")
if (numFilesUnzipped < 0)
    print zip.lastErrorText() + "\n";
    exit
end

#  The filenames within the .zip are unchanged, but it unzipped
#  test/hw.pl and test/hamlet2.xml