#!/usr/bin/perl use strict; use warnings; use Archive::Zip; my $zipfile = "test.zip"; open(ZIP, "<", "$zipfile") or die "$zipfile: $!"; my $zipdata = do { local $/; ; }; close(ZIP); open(my $ZIP, "<", \$zipfile) or die "\$zipfile: $!"; my $zip = Archive::Zip->new(); my $status = $zip->readFromFileHandle($ZIP); print "\$status = $status\n"; foreach my $member ($zip->members()) { print "member: " . $member->fileName() . "\n"; } close(ZIP);