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/48725659/

相关文章:

c# - Azure BlobStorage 流对大于 25 MB 的文件关闭

java - 将 Gradle 验证为 Azure Artifacts Maven

c# - 加密 Azure Function 中的服务总线连接字符串

azure - Azure Blob 存储的占位符 URL

python - 在 blob 服务 python 中追加 block

javascript - 使用流将文件保存到 azure 存储不起作用

node.js - 尝试通过 Node js将zip文件上传到azure存储

c# - 保留从客户收到的大数据直至处理

azure - 使用 powershell 部署到 azure 函数

azure - 尝试从 Azure Blob 存储复制数据时出现未知错误