Arjen Laarhoven

NAME

PerlIO::via::Bzip2 - PerlIO layer for Bzip2 (de)compression

SYNOPSIS

    use PerlIO::via::Bzip2;
    # or
    use PerlIO::via::Bzip2 level => 9; # Maximum compression

    # Read a bzip2 compressed file from disk.
    open(my $fh, "<:via(Bzip2)", "compressed_file");
    my $uncompressed_data = <$fh>;

    # Compress data on-the-fly to a bzip2 compressed file on disk.
    open(my $fh, ">:via(Bzip2)", "compressed_file");
    print {$fh} $uncompressed_data;

    # Set compression level
    PerlIO::via::Bzip2->level(5);
    open(my $fh, ">:via(Bzip2)", "compressed_file");
    print {$fh} $uncompressed_data;

DESCRIPTION

This module implements a PerlIO layer which will let you handle bzip2 compressed files transparently.

Class Methods

level([$level])

level sets or returns the compression level of the bzip2 library. It ranges from 1 (least compression, most efficient memory use) to 9 (best compression, most memory usage).

This parameter can also be set during using library import, using use PerlIO::via::Bzip2 level => $level.

BUGS

Using binmode() on an opened file for compression will pop (remove) the layer.

PREREQUISITES

This module requires Compress::Bzip2 version 1.03.

SEE ALSO

PerlIO::via, Compress::Bzip2

AUTHOR

Arjen Laarhoven, <arjen@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2005 by Arjen Laarhoven

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.