azure - Blob 存储中的空图像

标签 azure azure-blob-storage

这就是我尝试将图像上传到 Azure 博客存储,然后上传位于此处的空文件的方法。

Azure image 1

Info about Blob storage

我尝试在这里上传此图片:

CloudStorageAccount storageAccount = new CloudStorageAccount(new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(Accountname, KeyValue), true);
            // Create the blob client.
            CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

            // Retrieve a reference to a container.
            CloudBlobContainer container = blobClient.GetContainerReference(ContainerValue);

            CloudBlockBlob blockBlob = container.GetBlockBlobReference(filename);
            using (var f = System.IO.File.Open(model.FileToUpload.FileName, FileMode.Create))
            {
                await blockBlob.UploadFromStreamAsync(f);
            }

但是如果我尝试打开这张图片,请说这个。

error with image.从丹麦语到英语:我们无法打开此文件

最佳答案

正如Marco所说,FileMode.Create指定操作系统应该创建一个新文件。如果文件已存在,它将覆盖。 更多详情可以引用这个article

根据您提供的图片,您的 Blob 大小为0 B。因此,您总是无法找到该文件并打开它。 FileMode 指定操作系统应如何打开文件。

所以我建议您可以删除它并使用OpenRead打开现有文件进行阅读。您可以引用如下代码:

using (var f = System.IO.File.OpenRead(model.FileToUpload.FileName))
            {
                await blockBlob.UploadFromStreamAsync(f);
            }

关于azure - Blob 存储中的空图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48664217/

相关文章:

git - 未执行Azure功能的自动部署

azure - Azure 函数失败后如何延迟执行?

php - 未找到 CreateBlobOptions 类

azure - 如何使用 azure 函数和服务总线触发器将 blob 存储作为输出绑定(bind)写入

sql - Windows Azure - 带 API 的 SQL 数据库

azure - 在哪里存储 local.settings.json 中的设置以进行 proddeployment?

azure - 高级存储帐户上的 az 复制失败

python - 无需绑定(bind)即可访问 Blob 存储?

azure - Azure Blob 存储是否有默认图像类型?

azure - 如何从 azure blob 存储读取 ".owl"