首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >逐行读取BZ2文件

逐行读取BZ2文件
EN

Stack Overflow用户
提问于 2017-04-28 13:11:17
回答 1查看 923关注 0票数 1

我想逐行阅读文件,如下所示:

代码语言:javascript
复制
#!/usr/bin/env perl

use strict;
use warnings;

open my $fh, '<', "file.txt" or die "Can't read file.txt: $!";

while (<$fh>) {

}
close $fh;

但我无法找到如何对压缩文件(如bz2和gz )执行此操作。

我无法从IO::Uncompress::Bunzip2中理解如何在一个真正的程序中实现这一点。

如何像上面对普通文件那样逐行读取压缩文件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-28 13:17:59

试试这个:

代码语言:javascript
复制
use strict;
use warnings;

use IO::Uncompress::Bunzip2 '$Bunzip2Error';

my $file = "somefile.txt.bz2";

my $zh = IO::Uncompress::Bunzip2->new( $file, {
    AutoClose   => 1,
    Transparent => 1,
} ) or die "IO::Uncompress::Bunzip2 failed: $Bunzip2Error\n";

while ( <$zh> ) {
    print;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43681066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档