使用C#将存储在Azure Blob存储中的图像下载为图像

简单的西蒙

我已经在Azure Blob存储中存储了一堆图像。现在,我要检索它们并调整它们的大小。我已经成功地从帐户中读取了很多信息,例如文件名,上次修改日期和大小,但是如何获得实际图像?我看到的示例向我展示了如何将其下载到文件中,但这对我没有用,我想将其下载为图像以便可以对其进行处理。

这是我到目前为止所拥有的:

BlobContainerClient containerClient = blobServiceClient.GetBlobContainerClient(containerName);

        Console.WriteLine("Listing blobs...");

        // build table to hold the info
        DataTable table = new DataTable();
        table.Columns.Add("ID", typeof(int));
        table.Columns.Add("blobItemName", typeof(string));
        table.Columns.Add("blobItemLastModified", typeof(DateTime));
        table.Columns.Add("blobItemSizeKB", typeof(double));
        table.Columns.Add("blobImage", typeof(Image));

        // row counter for table
        int intRowNo = 0;
        // divider to convert Bytes to KB
        double dblBytesToKB = 1024.00;
        // List all blobs in the container
        await foreach (BlobItem blobItem in containerClient.GetBlobsAsync())
        {
            // increment row number
            intRowNo++;
            //Console.WriteLine("\t" + blobItem.Name);
            // length in bytes
            long? longContentLength = blobItem.Properties.ContentLength;
            double dblKb = 0;
            if (longContentLength.HasValue == true)
            {
                long longContentLengthValue = longContentLength.Value;
                // convert to double DataType
                double dblContentLength = Convert.ToDouble(longContentLengthValue);
                // Convert to KB
                dblKb = dblContentLength / dblBytesToKB;
            }
            // get the image
            
            // **** Image thisImage = what goes here ?? actual data from blobItem ****

            // Last modified date
            string date = blobItem.Properties.LastModified.ToString();
            try
            {
                DateTime dateTime = DateTime.Parse(date);
                //Console.WriteLine("The specified date is valid: " + dateTime);
                table.Rows.Add(intRowNo, blobItem.Name, dateTime, dblKb);
            }
            catch (FormatException)
            {
                Console.WriteLine("Unable to parse the specified date");
            }
        }
亚历克斯·艾特

您需要为图像打开读取流,并Image从该流构造.NET

await foreach (BlobItem item in containerClient.GetBlobsAsync()){
    var blobClient = containerClient.GetBlobClient(item.Name);
    using Stream stream = await blobClient.OpenReadAsync();
    Image myImage = Image.FromStream(stream);
    //...
}

blobclient类也暴露了一些其他有用的方法,如下载到流。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从Azure Blob存储查看图像,而不是下载图像?

来自分类Dev

如何从Azure Blob存储查看图像,而不是下载图像?

来自分类Dev

将图像存储为文件系统中的Blob

来自分类Dev

显示在 SQL Server 中存储为 blob 的图像

来自分类Dev

在Azure Blob存储中调整图像大小

来自分类Dev

在Azure Blob存储中调整图像大小

来自分类Dev

在网站中嵌入存储在Azure BLOB存储中的图像

来自分类Dev

用于在Azure Blob存储中存储图像的共享访问策略

来自分类Dev

在 Azure 存储 Blob 上使用 .Net Core 和 C# 将图像序列转换为 MP4 文件

来自分类Dev

从Azure Blob存储访问图像

来自分类Dev

从Firebase存储下载图像

来自分类Dev

如何在MySQL中存储Blob(图像)?

来自分类Dev

将图像存储为Blob并显示在html上

来自分类Dev

如何从 Python Azure 存储下载 Blob 图像并从中创建图像对象?

来自分类Dev

PHP-存储为BLOB的图像显示为断开的链接

来自分类Dev

PHP-存储为BLOB的图像显示为断开的链接

来自分类Dev

如何使用c#在单个请求中从Azure Blob存储下载多个文件?

来自分类Dev

使用Rest Services,Java和Angular JS将存储在Mysql数据库中的图像显示为Blob

来自分类Dev

使用Rest Services,Java和Angular JS将存储在Mysql数据库中的图像显示为Blob

来自分类Dev

使用Azure函数C#将JSON存储在Blob存储上

来自分类Dev

Azure功能-调整存储在Blob容器中的图像的大小

来自分类Dev

Azure功能-调整存储在Blob容器中的图像的大小

来自分类Dev

显示所有存储为MySQL数据库中BLOB数据的图像

来自分类Dev

下载图像并存储为可绘制资源

来自分类Dev

下载图像并存储为可绘制资源

来自分类Dev

在 MySQL 中将小图像存储为 Blob 数据

来自分类Dev

在存储为numpy的图像中的XY坐标?

来自分类Dev

NSCache在Swift中为UITableView存储图像

来自分类Dev

Azure存储Blob容器Vituval文件夹图像在JAVA中下载

Related 相关文章

  1. 1

    如何从Azure Blob存储查看图像,而不是下载图像?

  2. 2

    如何从Azure Blob存储查看图像,而不是下载图像?

  3. 3

    将图像存储为文件系统中的Blob

  4. 4

    显示在 SQL Server 中存储为 blob 的图像

  5. 5

    在Azure Blob存储中调整图像大小

  6. 6

    在Azure Blob存储中调整图像大小

  7. 7

    在网站中嵌入存储在Azure BLOB存储中的图像

  8. 8

    用于在Azure Blob存储中存储图像的共享访问策略

  9. 9

    在 Azure 存储 Blob 上使用 .Net Core 和 C# 将图像序列转换为 MP4 文件

  10. 10

    从Azure Blob存储访问图像

  11. 11

    从Firebase存储下载图像

  12. 12

    如何在MySQL中存储Blob(图像)?

  13. 13

    将图像存储为Blob并显示在html上

  14. 14

    如何从 Python Azure 存储下载 Blob 图像并从中创建图像对象?

  15. 15

    PHP-存储为BLOB的图像显示为断开的链接

  16. 16

    PHP-存储为BLOB的图像显示为断开的链接

  17. 17

    如何使用c#在单个请求中从Azure Blob存储下载多个文件?

  18. 18

    使用Rest Services,Java和Angular JS将存储在Mysql数据库中的图像显示为Blob

  19. 19

    使用Rest Services,Java和Angular JS将存储在Mysql数据库中的图像显示为Blob

  20. 20

    使用Azure函数C#将JSON存储在Blob存储上

  21. 21

    Azure功能-调整存储在Blob容器中的图像的大小

  22. 22

    Azure功能-调整存储在Blob容器中的图像的大小

  23. 23

    显示所有存储为MySQL数据库中BLOB数据的图像

  24. 24

    下载图像并存储为可绘制资源

  25. 25

    下载图像并存储为可绘制资源

  26. 26

    在 MySQL 中将小图像存储为 Blob 数据

  27. 27

    在存储为numpy的图像中的XY坐标?

  28. 28

    NSCache在Swift中为UITableView存储图像

  29. 29

    Azure存储Blob容器Vituval文件夹图像在JAVA中下载

热门标签

归档