gpt4 book ai didi

c# - 如何使用 DotNetZip 即时提取 ZIP 文件?

转载 作者:行者123 更新时间:2023-12-02 07:32:23 24 4
gpt4 key购买 nike

在我的 Windows Azure 代码中,我想从 Blob 存储下载 ZIP 文件并即时解压缩,并将解压缩的内容存储到磁盘。这样,我可以节省先将文件写入磁盘,然后在提取时读取它的时间。

我正在尝试使用 DotNetZip 来实现此目的。

ZIP 文件本来就很大,所以它被切成碎片(不是多部分存档,而是普通 ZIP 存档,只是切成更小的文件),并将每个碎片上传到 Blob 存储中。我知道如何迭代所有部分并在需要时打开每个 blob

Azure SDK 具有返回 Stream 后代的 CloudBlob.OpenRead()

DotNetZip 有 ZipInputStream 类,该类具有接受 Stream 的构造函数。

如何将这些片段连接在一起,以便我可以逐一下载 ZIP 文件片段并即时提取它们?

最佳答案

创建您自己的流类,该类将根据其位置从相应的 CloudBlob 返回数据。

然后使用此类作为您的 ZipInputStream 的输入流。

public sealed class ZipBlobStream : Stream
{
...

http://msdn.microsoft.com/library/system.io.stream.aspx

关于c# - 如何使用 DotNetZip 即时提取 ZIP 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11428000/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com