如何使用Perl列出ZIP文件的内容?

mar*_*n87 2 perl zip

我的目标是做它在标题中所说的内容.

我有以下代码行,只需打印出来[view archive],当我点击它时,浏览器只需下载zip文件.

print "\<a href=\"http:\/\/intranet.picsel.com\/~devcvs\/view-file.cgi?file=$reviewdata{'document'}&review_id=$reviewdata{'id'}\"\>[view archive]\<\/a\>\n";
Run Code Online (Sandbox Code Playgroud)

我想要做的是在页面的任何位置列出此zip文件中包含的文件,例如,在此链接链接到的下方甚至是新页面,并将文件名作为参数.

我相信一旦完成,浏览器应该只关注这些文件并在浏览器中查看它们,因为它们将是pdfs和html文件,我没有预见到任何问题.

我确信有一个模块可以做到这一点,但我不确定如何使用它实现我的目标.

任何帮助深表感谢.

Zai*_*aid 7

看看Archive::Zip:

use strict;
use warnings;

use Archive::Zip qw/ :ERROR_CODES :CONSTANTS /;

my $zipFile = 'someZip.zip';

my $zip = Archive::Zip->new();

unless ( $zip->read( $zipFile ) == AZ_OK ) {  # Make sure archive got read

    die 'read error';
}

my @files = $zip->memberNames();  # Lists all members in archive

print $_, "\n" for @files;
Run Code Online (Sandbox Code Playgroud)