2010-06-01 65 views
1

我有一个文本文件(file.txt里面的file.zip)内的zip文件,我想追加到这个文件的另一个文本文件file.txt外的zip文件。 我该怎么做?有解决方案吗?附加一个文本文件里面的文件

我试图附加=> 1个参数添加到IO ::压缩::邮编但Zip文件里的文件被覆盖..

use IO::Compress::Zip qw(zip $ZipError) ; 

$filenameToZip = 'file.txt'; 
zip $filenameToZip => "file.zip",Append => 1 
    or die "zip failed: $ZipError\n"; 

我是否需要解压缩zip文件,追加/合并两个TXT文件并再次压缩文件? 还是有更好的解决方案?

回答

5

我会推荐使用Archive::Zip模块,而不是较低级别的模块。除非你知道否则,我希望IO::Compress::Zip知道如何做Zip压缩,但不知道如何操作Zip存档文件。

为IO ::压缩文档::邮编说:

该模块提供了允许写入ZIP压缩数据文件或缓冲液中的Perl接口。

该模块的主要目的是提供对zip文件和缓冲区的流写入访问。它不是一个通用文件存档器。如果这是你想要的,看看Archive :: Zip。

+0

这是使用的正确模块。听起来你可能想使用extractMember获取当前文件,使用标准perl IO将其他文件附加到它,然后使用replaceMember替换存档中的当前文本文件... – 2010-06-01 23:56:05