如何删除 Azure 文件夹中的 blob 文件 [关闭]

Posted

技术标签:

【中文标题】如何删除 Azure 文件夹中的 blob 文件 [关闭]【英文标题】:How to delete blob files within folder an Azure [closed] 【发布时间】:2019-07-15 09:11:18 【问题描述】:

我在 Azure 中有一个名为“870”的 blob 文件夹,其中包含各种文件夹(请参见下面的快照):

Blob 图片:

我只是想只删除图像,而不是其他文件夹。但我不能。我有一个代码,但它删除了所有内容(见下面的快照):

我只想删除“870”文件夹中的图像(.svg),而不是其他文件夹数据和文件夹。

【问题讨论】:

请不要将您的代码发布为图片。使用代码 sn-ps 以便其他人可以重现您的问题。 【参考方案1】:

如果你只是想删除870文件夹中的图片文件,你应该将ListBlobs()方法的参数设置为false,它在我这边工作。

            foreach (IListBlobItem blob in cloudBlobContainer.GetDirectoryReference("your folder path").ListBlobs(false))
            

                if (blob.GetType() == typeof(CloudBlockBlob))
                
                    ((CloudBlockBlob)blob).DeleteIfExists();                    
                
            

如果你将true设置为ListBlobs()方法,它也会列出870的子文件夹中的文件。然后导致其中的子文件夹和文件被删除(因为你不能拥有一个azure blob 存储中的空文件夹)。

关于参数useFlatBlobListing也可以参考这个官方doc:

一个布尔值,指定是在平面列表中列出 Blob,还是按虚拟目录分层列出 Blob。

【讨论】:

以上是关于如何删除 Azure 文件夹中的 blob 文件 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Dot.Net Core 中 Azure blob 容器中的软删除 blob 文件

如何使用 blockblobservice 的 delete_blob 方法删除 azure 容器内的文件夹(blob)?

下载后如何从 azure blob 存储中删除文件

如何在持续时间后删除 blob?

如何使用 C# 中的 Azure.Storage.Blobs 从 Azure 存储 Blob 以 ByteArray 格式获取文件

Azure Blob 存储:从 Excel 工作簿中删除密码