当前位置:  开发笔记 > 编程语言 > 正文

如何在Perl中创建Zip存档?

如何解决《如何在Perl中创建Zip存档?》经验,为你挑选了2个好方法。

我需要在过滤我想要包含的文件列表后创建一个Zip存档.我希望该模块能够在Windows和Linux中运行.

由于我需要过滤文件列表,我真的不想使用外部程序.我不想引入外部依赖项,所以我可以将脚本编译成Windows上的单个可执行文件(使用ActiveState PDK).

我已经尝试过了什么

到目前为止,我已经在CPAN上使用了Archive :: Zip,但它在Windows机器上有一个使用非ASCII文件名的主要错误:文件名在存档中被破坏,因为它们没有被转换为unicode.

有一个错误报告,但它已经超过10个月没有更新,在模块文档中,开发人员是无益的("修复你的计算机或摆脱Windows"类型).

更新:
感谢brian和Alan Haggai Alavi的澄清,似乎已经有足够的爱Archive::Zip来尽快获得这些错误,并最终在Windows中拥有一个功能齐全的zip模块.



1> brian d foy..:

尽管模块文档说明了一些关于Windows的愚蠢内容,但目前的维护者是Adam Kennedy,就是那个为你带来Strawberry Perl的人.他绝对不是反Windows.他发布了10月的版本,所以他们正在努力.还有来自Perl基金会的开放资助来修复Archive :: Extract错误.你提到的错误,RT 35334:Archive :: Zip文件名编码,也许只需要有人向它展示一些爱.那可能是你.人们解决了困扰他们的问题,所以也许没有人对模块感兴趣需要这个.

该模块存在问题,自从我在几个项目中使用它以来,我一直在关注它的进展.它最近变得更好,当然可以使用一些爱.有时开源意味着帮助解决您遇到的问题.我知道这并没有帮助你立即解决你的问题,但我认为你除了system()通话之外还要完成这项工作.



2> Alan Haggai ..:

最近通过在Windows下添加Unicode文件名支持解决了上述错误.CPAN将在一周内发布具有此修复程序的版本.

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有