C# 如何使用DotNetZip动态提取ZIP文件?
在我的WindowsAzure代码中,我想从Blob存储中下载一个ZIP文件,并动态解压,然后将解压后的内容存储到磁盘上。通过这种方式,我首先将文件写入磁盘,然后在进行提取时读取文件,然后进行保存 我正在尝试使用DotNetZip来实现这一点 ZIP文件最初非常大,所以它被分为几部分(不是多部分存档,而是一个普通的ZIP存档,只是分为较小的文件),每一部分都被上传到Blob存储中。我知道如何遍历所有部分,并在需要时打开每个blob n Azure SDK具有C# 如何使用DotNetZip动态提取ZIP文件?,c#,azure,stream,zip,dotnetzip,C#,Azure,Stream,Zip,Dotnetzip,在我的WindowsAzure代码中,我想从Blob存储中下载一个ZIP文件,并动态解压,然后将解压后的内容存储到磁盘上。通过这种方式,我首先将文件写入磁盘,然后在进行提取时读取文件,然后进行保存 我正在尝试使用DotNetZip来实现这一点 ZIP文件最初非常大,所以它被分为几部分(不是多部分存档,而是一个普通的ZIP存档,只是分为较小的文件),每一部分都被上传到Blob存储中。我知道如何遍历所有部分,并在需要时打开每个blob n Azure SDK具有CloudBlob.OpenRead(
CloudBlob.OpenRead()
,它返回流
子代
DotNetZip有一个ZipInputStream
类,该类有一个接受流的构造函数
public sealed class ZipBlobStream : Stream
{
...
如何将这些片段连接在一起,以便逐个下载ZIP文件片段并动态提取它们?创建自己的流类,该流类将根据其位置从相应的CloudBlob返回数据
然后将该类a输入流用于ZipInputStream
public sealed class ZipBlobStream : Stream
{
...
创建您自己的流类,该流类将根据其位置从相应的CloudBlob返回数据
然后将该类a输入流用于ZipInputStream
public sealed class ZipBlobStream : Stream
{
...