MemberRead
真实的
IO::File
以兼容的方式(因此我们将其传递给
Mail::Header
getlines
method
),但没有。
我们可以通过将文件内容临时存储在数组中来解决它的不兼容性。
my @lines;
{
my $handle = Archive::Zip->new($jar_file)->memberNamed('META-INF/MANIFEST.MF')->readFileHandle;
while (defined(my $line = $handle->getline)) { # even $_ doesn't work!! what a piece of camel dung
push @lines, $line;
}
}
my $headers = Mail::Header->new([@lines]);
print $headers->get('Class-Path');