使用ZipOutputStream的Zip文件中的子目录

时间:2011-12-06 02:33:04

标签: ruby zip rubyzip

我正在使用此处描述的技术创建一个zip文件:

http://info.michael-simons.eu/2008/01/21/using-rubyzip-to-create-zip-files-on-the-fly/

客户端已要求我在此zip文件中包含子目录。我搜索了ZipOutputStream文档但我看不到包含目录的方法。有没有办法用ZipOutputStream做到这一点?我应该使用与ZipOutputStream不同的类吗?

此外,我正在压缩的文件不在本地文件系统上,而是存储在云服务中。

1 个答案:

答案 0 :(得分:6)

想出答案,我想我会把它放在搜索引擎中找到。

无论如何,我发布的链接使用了

zos.put_next_entry("some-funny-name.jpg")

将文件添加到zip文件中。事实证明,该字符串参数不仅仅是一个文件名,它也可以是一个路径!所以使用

zos.put_next_entry("some-random-folder/some-funny-name.jpg")

将使您的zip文件包含一个名为“some-random-folder”的文件夹,其文件名为“some-funny-name.jpg”。