Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re: Zipping Files

by RhetTbull (Curate)
on Sep 26, 2001 at 20:01 UTC ( #114842=note: print w/ replies, xml ) Need Help??


in reply to Zipping Files

Echoing what's already been said here, I agree that either Archive::Zip or Compress::Zlib and Archive::Tar are your best bets. If you need to compress multiple files into one zip archive that is readable on Windows, I would recommend Archive::Zip. However, if you only need to compress one file (and if that one file happens to be the output of your program) my recommendation is IO::Zlib. This is great module that lets you create an IO handle that reads or writes a gzip compressed file. Here are some snippets to get your started:

Using Archive::Zip:

#!/bin/perl -w use warnings; use strict; use Archive::Zip qw( :ERROR_CODES :CONSTANTS); #almost verbatim from the Archive::Zip docs: my $zip = Archive::Zip->new(); my $member = $zip->addFile('t.out'); die 'Error writing file' if $zip->writeToFileNamed('foo.zip') != AZ_OK +;
using IO::Zlib:
#!/bin/perl -w use warnings; use strict; require 5.004; #using TIEHANDLE interface use IO::Zlib; tie *FILE, 'IO::Zlib', "foo.txt.gz", "wb"; #do your stuff here #everything written to FOO gets compressed and stored in foo.gz print FILE "hello world\n";
If you want to use Compress::Zlib and Archive::Tar then just read the docs but I doubt it's very difficult. The above two are certainly straightforward and easy.


Comment on Re: Zipping Files
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://114842]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (12)
As of 2015-07-07 20:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (93 votes), past polls