azure - 上传 zip 文件时 Windows Azure 中出现错误 : "ZipException was unhandled" "EOF in header"

标签 azure azure-blob-storage

我一直在使用 Windows Azure 创建文档管理系统,到目前为止一切进展顺利。我已经能够通过 asp.net 前端将文件上传和下载到 BLOB 存储。

我现在尝试做的是允许用户上传 .zip 文件,然后从该 .zip 中取出文件并将它们另存为单独的文件。问题是,我收到“ZipException 未处理”“ header 中的 EOF”,我不知道为什么。

我正在使用 ICSharpCode.SharpZipLib 库,我已经将它用于许多其他任务并且效果很好。

这是基本代码:

CloudBlob ZipFile = container.GetBlobReference(blobURI);
MemoryStream MemStream = new MemoryStream();
ZipFile.DownloadToStream(MemStream);
....
while ((theEntry = zipInput.GetNextEntry()) != null)

它位于以 while 开头的行上,我收到错误。我添加了 10 秒的 sleep 时间,只是为了确保已经过去了足够的时间。

如果我调试它,MemStream 有一个长度,但 zipInput 有时有,但并非总是如此。它总是失败。

最佳答案

只是一个随机猜测,但是在读取之前是否需要将流寻回0?不确定您是否已经这样做了(或者是否有必要)。

关于azure - 上传 zip 文件时 Windows Azure 中出现错误 : "ZipException was unhandled" "EOF in header",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2547481/

相关文章:

azure - 我可以在 Azure Blob 存储中解压缩文件吗?

c# - 以编程方式上传的 Azure Blob 被删除

azure - Azure 存储数据移动库是否支持 Azure 表?

c# - 当webrole通过自动缩放删除时如何取消订阅?

Azure 应用程序注册获得 Multi-Tenancy 应用程序的同意日期

azure - 使用 certreq 的 CRYPT_E_NOT_FOUND 问题

azure - .Net7 在触发器之外隔离 Azure SignalR SignalRMessageAction

Azure Blob 版本控制

node.js - 文件未从 Angular 发送到 Nodejs

python - Azure blob - 直接存储到存档层