my $zip = Archive::Zip->new( 'browser.jar' ) || die "$!"; # extract what you want my $file = "content/browser/browser.js"; $zip->extractMember($file); # Edit the file as necessary, # which is at ./content/browser/browser.js # now add it back $zip->removeMember($file); $zip->addFile($file); $zip->overwrite();