【问题标题】:Adding a file to a zip in C#在 C# 中将文件添加到 zip
【发布时间】:2012-03-04 08:43:17
【问题描述】:

我正在尝试将文件添加到 zip而不创建新的 zip

我已经尝试过使用多个库,但如果不重新创建一个全新的 zip 文件,它们都无法做到这一点。我正在使用的库是DotNetZip

我为什么要这样做是因为我正在处理非常大的 zip 文件,我只想修改 zip 中的现有文件。

【问题讨论】:

  • 检查stackoverflow.com/questions/1356003/…,它解释了它是如何使用 DotNetZip 完成的。
  • zip 文件(存档)只是不太适合这个...不要被只需要几个方法调用的解决方案所欺骗,它可能仍在复制整个文件。
  • @olaf 没有这样做 :( 就像我说的,我希望它不要创建一个全新的文件
  • 这里的部分问题是 zip 文件使用的压缩算法需要将数据视为流。对于不同的输入流,必须在多个位置修改输出流,因此即使您可以就地修改输出,也需要复制大量的输出流以腾出空间用于文件中其他地方的更改。创建一个新文件要简单得多,而且几乎不会花费更多时间。
  • 我认为,如果您使用 WinZip 修改一个大文件并监视这些文件,您会看到一个 .tmp 文件正在复制到...

标签: c# zip


【解决方案1】:

好吧,当您从现有 ZIP 添加或删除文件时,我们SecureBlackbox 的 ZIP 组件不会创建新的 ZIP。 IE。流被就地修改。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多