繁体   English   中英

perl IO::zlib 打印纯文本文件

[英]perl IO::zlib print plain text file

我有一个 perl 脚本,我希望用户能够选择输出是 Gzip 还是纯文本文件。 我正在使用 perl IO::zlib ,想法是检查输出文件名,如果它有.gz扩展名,请使用 Gzip,否则只需以纯文本打印。 我正在使用如下命令:

my $EXCL = new IO::Zlib;

$EXCL->open($out_file, (substr($out_file, -3) eq '.gz' ? "wb9" : "wT")) || die("ERROR: cannot open EXCL file!") if($out_file);

但输出文件总是被压缩的! 难道我做错了什么?

谢谢,

为什么要使用 IO::Zlib 来处理未压缩的文件?

my $fh;
if (substr($out_file, -3) eq '.gz') {
    $fh = IO::ZLib->new($out_file) or die "Error opening $out_file: $!";
} else {
    open $fh, '>', $out_file or die "Error opening $out_file: $!";
}

我在http://search.cpan.org/~tomhughes/IO-Zlib-1.10/Zlib.pmhttp://search.cpan.org/~pmqs/IO-Compress-2.069 中没有找到任何wT模式/lib/压缩/Zlib.pm

PS:在文件打开相关的错误消息中包含文件名和系统错误($!)总是好的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM