1
Archive::Zip
的快速问题。我如何知道成员是目录还是文件?我需要将特定Zip中的所有Ear文件移动到另一个目录。但是,一些目录也有.ear
后缀,我不想要那些。Perl Module Archive :: Zip - 如何知道成员是否是文件目录?
我做:
my @jarMembers = $zip->membersMatching('^.*\.jar');
foreach my $member (@jarMembers) {
my $fileName = basename($member->FileName());
$zip->ExtractMember($member, "$zipRootDir/$fileName";
}
我想验证我将不会得到该目录foo.ear
。
我怀疑目录名称是假设以斜杠结尾,但在文档中没有明确说明这一点。我还注意到特殊的Archive :: Zip :: FileMember方法,但在访问它们的文档方面没有太多。它是这样的吗?
if ($member->externalFileName()) {
print "Member is a file\n";
} else {
print "Member is a directory\n";
}
这会告诉我一个成员是否是文件或目录,或者是我的第一个代码片段是否足够?
谢谢!我不知道为什么我没有在Archive :: Zip文档中看到这个。 – 2010-11-24 23:12:28