如何从 Azure Blob 存储下载文件(在其他文件夹内)?

How to download a file (inside an other folder) from Azure Blob Storage?

我需要从 Azure Blob 存储下载文件。 但是另一个文件夹里面的文件。例如;

Blob 容器
---myBlobContainer
-----测试文件夹1
------测试文件夹2
----------aaa.jpeg

我想下载 aaa.jpeg 文件。我可以在如下情况下下载它;

Blob 容器
---myBlobContainer
------aaa.jpeg

如何浏览文件夹,我无法提供文件路径。 谢谢

使用 Azure 存储帐户时没有文件夹。你有一个容器,其余的都是 blob 名称的一部分。

例如

myBlobContainer/TestFolder1/TestFolder2/aaa.jpeg

myBlobContainer 是容器名称

/TestFolder1/TestFolder2/aaa.jpeg

是 blob 名称

更多信息:https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#blob-names

一种简单的复查方法,只需遍历容器内的所有 blob,即可确认 'sublevels' 是 blob 名称的一部分

BlobContainerClient blobContainerClient = new BlobContainerClient(connectionString, container);
blobContainerClient.CreateIfNotExists();
Console.WriteLine("Listing blobs...");
// List all blobs in the container
var blobs = blobContainerClient.GetBlobs();
foreach (BlobItem blobItem in blobs)
{
     Console.WriteLine("\t" + blobItem.Name);
}