【发布时间】:2012-01-29 18:00:10
【问题描述】:
使用 DotNetZip 库 (http://dotnetzip.codeplex.com/) 是否可以将文件从一个 zip 文件移动到另一个文件,而无需先将该文件解压缩到磁盘?也许提取到一个流,然后从同一个流更新到另一个 zip?
这些 zip 文件受密码保护,并且这些 zip 文件中的数据由于其许可证而应保持这种状态。如果我只是先解压缩到磁盘然后更新另一个 zip,那么这些文件就有可能被用户截获。
【问题讨论】:
-
那么到目前为止,您尝试了什么?似乎是一个简单的问题。
-
使用 ZipFile 对象,似乎无法让它工作。我可以打开一个 zip 文件,解压缩,然后打开目标文件并更新它,但不知道如何不提取它,而只是读取内存中的文件并将其写入目标。仍在努力,但我想我会问一下,以防以前有人这样做过。
-
我不熟悉 dotnetZip,但 ZLib 让我可以打开一个 readStream 和一个 writeStream,然后它就是 CopyTo()。当然,该文件将被解压缩/重新压缩和解密/加密。你需要密码。