use IO::Uncompress::Unzip qw( $UnzipError); my $unzip = new IO::Uncompress::Unzip "my.zip", Name => "abc.txt" or die "Cannot open my.zip[abc.txt]: $UnzipError\n"; while <($unzip>) { ... }