首页 > 解决方案 > Azure 存储 Blob 容器 Vituval 文件夹图像在 JAVA 中下载

问题描述

我想从 Azure 存储 Blob 容器下载一个图像,它有一个虚拟文件夹,它包含图像,需要在 java 代码中下载该图像。

Asure 存储结构:

“Blob 容器”->“Blob 文件夹”->“Sample.jpg”

下面的代码是直接从容器下载图像,我需要从容器内的 fodler 下载图像

BlobServiceClient storageClient = new BlobServiceClientBuilder() .endpoint(endpoint.toString()) .credential(credential) .buildClient();

    BlobContainerClient blobContainer = storageClient.getBlobContainerClient(azureContainer);

    BlockBlobClient blobClient = blobContainer.getBlobClient(fileName).getBlockBlobClient();
    blobClient.download(response.getOutputStream());

标签: java-8azure-storageazure-blob-storageazure-storage-filesazure-java-sdk

解决方案


首先要知道azure blob storage的存储其实是扁平的,它其实根本没有所谓的文件夹。

我的意思是您必须将路径和文件名组合为文件名传递方法。如果您列出当前容器中的文件,您会发现它们的格式类似于:

folder1/folder2/filename.suffix


推荐阅读