科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道应用软件用Perl动态建立ZIP压缩文件

用Perl动态建立ZIP压缩文件

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Perl提供大量处理不同文件格式的内置函数和外来模块。特别是,它可以通过Archive::Zip模块,动态建立和阅读ZIP压缩文件,而不必依赖外来工具和实用工具。

作者:builder.com.cn 2007年5月18日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

从现有的ZIP压缩文件中提取文件

往压缩文件中添加文件后,如何将它们提取出来呢?很明显,使用extractTree()方法!这个方法允许你把现有压缩文件中的所有文件提取到一个指定的目录中,如列表D所示:

列表D

#!/bin/perl

use Archive::Zip;# imports

$obj = Archive::Zip->new();# new instance

$status = $obj->read('dummy.zip');# read file contents

if ($status != AZ_OK) {

die('Error in file!');

} else {

$obj->extractTree(undef, "/tmp/");# extract files

}

在上例中,extractTree()方法解压整个压缩文件,将其中的所有文件提取到一个指定目录中。如果这个目录不存在,extractTree()方法将自动建立这个目录;当然,这以脚本获得写磁盘的许可为前提。

有趣的是,你还可以进行更具选择性的提取操作,只提取与一个预先定义的列表相匹配的文件。要完成这个任务,你需要使用extractMember()方法,它逐个提取压缩文件,帮助你安置一个中间过滤器或在继续提取前执行检查。在模块文档中可以找相关实例。

灵活性

如上面的例子所示,Perl的Archive::Zip类的功能相当强大,为你处理ZIP压缩文件提供很大的灵活性。希望上面的脚本样本提起你的兴趣,让你开始自己应用这个类,更一步了解它的运行机制。祝编程快乐!

责任编辑:德东

查看本文国际来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章