当前位置: 首页 > 知识库问答 >
问题:

合并现有的zip文件比创建新的更好吗?

邢烨烨
2023-03-14

我有一个应用程序服务器,它有一堆文件,我可能需要在运行时动态组合它们的子集,并将它们作为压缩文件在单个HTTP响应中发送。让我们假设这些文件是A和B,我可以将它们预先存储为A.zip和B.zip并将它们组合成包含A和B的c.zip,或者只存储它们A和B,并将它们压缩到c.zip中。哪个更快?

共有1个答案

司寇阳曦
2023-03-14

它们都是个坏主意。制作包含两个文件的c.zip(a.zip和b.zip)将试图压缩大部分不可压缩的文件,并且需要三个解压步骤来解压,而不是一个。(使用适当的压缩选项可以避免浪费时间进行压缩。)提取A和B并压缩一个新的C可以省去所有用于生成A和B的压缩工作,并在生成C时重复所有这些工作。

相反,您希望合并这两个zip文件,假设其中没有冲突的filename/paths。您可以使用zipmerge来组合两个zip文件。

更新:

 类似资料:
  • 问题内容: 我正在尝试将 文件 从 一个文件夹 保存到 另一个 文件夹 。 zip文件夹 放置在其他目录中。而且我编写了以下代码: archive.php 但是可惜我无法创建.zip文件夹。我错过了任何一步吗? 问题答案: TEST是您的项目文件夹名称。 您可以根据需要定义路径。

  • 我需要制作一个现有war文件的副本,并更新其中的一个xml文件。我对如何做到这一点的想法是: 从现有WAR中提取文件 替换文件中的字符串 复制警告 将修改的文件添加回复制的WAR

  • 我试图在ZIP文件内创建一个ZIP文件,以重新构建以前在内存中的zip结构,我在Java。 我失败了,因为我得到了一个错误的内部ZIP内创建的初始ZIP文件。文件已损坏。当试图打开它时,我得到一个“文件的意外结局”。 我得到了这个结构: -input.zip--InnerInput.zip 代码使用java Stack和Map在内存中解压。然后它创建input2.zip,内部nput.zip。 总

  • 我试图通过在本地服务器上创建zip文件来下载a 2文件。文件是以zip格式下载的,但当我试图解压缩它时。它给出了一个错误:找不到中央目录签名的结尾。要么该文件不是zip文件,要么它构成了多部分存档的一个磁盘。在后一种情况下,中心目录和zip文件注释将在该存档的最后一个磁盘上找到。 下面的代码我使用这个: 我检查了传递到函数中的所有变量的值,都很好。所以请看这个。提前谢谢。

  • 如何在Pharo中创建zip文件并将其写入磁盘? 同样,/也是不可用的,因为该实现只能在实际磁盘上工作,而不能在内存中工作。 那么,是否有其他方法(或外部库),我可以压缩我的数据,而不需要转储所有文件到磁盘,压缩到那里,并读取最后的文件回来?

  • 问题内容: 我正在尝试使用php创建一个zip文件(确实如此-从此页面获取-http://davidwalsh.name/create-zip- php ),但是zip文件中的所有文件夹名称都是文件本身。 可以将zip文件中的文件减去所有文件夹吗? 这是我的代码: 问题答案: 这里的问题是要传递相同的两个参数。 根据文档: bool ZipArchive :: addFile (字符串 $ fil