【问题标题】:Unzip internal ZIP file to path将内部 ZIP 文件解压缩到路径
【发布时间】:2018-06-16 12:07:07
【问题描述】:

我有一个应用程序,我想将内部 ZIP 中的目录复制到路径。

做了一些搜索,发现了这个:Decompress byte array to string via BinaryReader yields empty string。但是,结果只是字节。我不知道如何将其转换回可以移动到路径的文件夹。 (只使用字节让我感到困惑)

在此处进行更多搜索将我指向 .NET 4.5 功能: https://docs.microsoft.com/en-us/dotnet/standard/io/how-to-compress-and-extract-files

有一个复杂之处,我没有 zip 路径,而是将 zip 中的 字节数组 保存在我的应用程序内部。记住这一点,我将如何使用这个ZipFile 功能,而不是使用一个字节数组作为输入?

我看过的其他一些东西:

注意,对于这个特定的应用程序,我想避免使用外部 DLL。我的目标是一个可移植的 CLI 可执行文件。

【问题讨论】:

  • ZipArchive 适用于流,因此将您的字节包装在 MemoryStream 中并从中解压缩。你的问题太笼统了,没必要回答。您应该尝试一些事情,并在您有具体要问的问题时提出问题。
  • 我刚刚在 MemoryStream 上查看了 MSDN 的页面。我不知道“包装你的字节”是如何或什么意思。可以举个例子吗?
  • 您可能会考虑熟悉 Internet 上可用的搜索工具,甚至是这个网站。 stackoverflow.com/search?q=%5Bc%23%5D+ziparchive+memorystream

标签: c# .net zip compression


【解决方案1】:

为了满足我只有字节和解压缩字节的需求(不使用MemoryBuffer,因为这对我来说仍然没有意义),我最终创建了一个临时文件夹,在该文件夹中创建了一个空文件,用压缩文件的字节填充它,然后使用ZipFile.ExtractToDirectory() 将其提取到最终目的地。 它可能不是最有效的,但效果很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-09
    • 1970-01-01
    • 2011-12-23
    相关资源
    最近更新 更多