Perl模块存档::Zip-如何知道成员是否是文件目录?
关于Perl模块存档::Zip-如何知道成员是否是文件目录?,perl,perl-module,Perl,Perl Module,关于Archive::Zip的快速问题。如何知道成员是目录还是文件?我需要将特定Zip中的所有Ear文件移动到另一个目录。但是,有些目录也有.ear后缀,我不想要这些 我正在做: my @jarMembers = $zip->membersMatching('^.*\.jar'); foreach my $member (@jarMembers) { my $fileName = basename($member->FileName()); $zip->Extr
Archive::Zip
的快速问题。如何知道成员是目录还是文件?我需要将特定Zip中的所有Ear文件移动到另一个目录。但是,有些目录也有.ear
后缀,我不想要这些
我正在做:
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";
}
这会告诉我成员是文件还是目录,或者我的第一个代码片段就足够了吗?我的Perl版本(Mac OS X 10.6.5上的5.10.0)在Archive::Zip::member
中有这个方法:
谢谢我不知道为什么我没有在Archive::Zip文档中看到这一点。
isDirectory()
Returns true if I am a directory.