如何使用流来压缩blob中的大文件

时间:2017-10-06 08:24:35

标签: azure stream zip azure-storage-blobs

我使用Azure与blob存储和Azure功能。 我收到了很多文件,有时我想生成一个zip,将其保存在存储中并生成一个链接。

因为我的拉链可以很大(1或2 Go)我想这样做"在飞行中",这意味着在保存之前不使用所有内存:

stream on a zipentry
write to the blob
flush the stream
create next zipentry

我知道我必须在容器中使用方法PutBlock(),但我错过了ICSharpZipLib和BlobContainer之间的代码。

有人对此有所了解吗?

1 个答案:

答案 0 :(得分:1)

好吧,如果我更仔细地看一下文档,我会看到方法

blob.OpenWrite()

返回一个流:

using (ZipOutputStream zipStream = new ZipOutputStream(blob.OpenWrite()))

然后我像往常一样。