如何在不在 Azure Java SDK 中创建或追加的情况下获取 AppendBlobItem

How to get an AppendBlobItem without creating or appending in Azure Java SDK

我需要使用 Azure Java SDK v12 获取现有的 AppendBlobItem。 但是,AppendBlobAsyncClient 提供创建和附加 BlobItem 方法,而不是简单的获取。

所以我列出了 BlobItem,如下所示,但 BlobItem 无法转换为 AppendBlobItem。


BlobContainerClientBuilder containerClientBuilder = new BlobContainerClientBuilder().endpoint(blobEndpoint).containerName(containerName)
                                                    .credential(new AzureSasCredential(sasCredential));
BlobContainerAsyncClient containerClient = containerClientBuilder.buildAsyncClient();
    
ListBlobsOptions listOption = new ListBlobsOptions();
listOption.setPrefix(blobPrefix);
    
// BlobItem can't cast to AppendBlobItem
BlobItem currentBlobItem =(AppendBlobItem)containerClient.listBlobs(listOption).sort(Comparator.comparing(BlobItem::getName)).blockFirst();

有没有办法在不创建或添加的情况下获取 AppendBlobItem?或将 BlobItem 转换为 AppendBlobItem。

不是,‘AppendBlobItem’ and ‘BlobItem’都是直接继承自‘java.lang.Object’。

其实他们之间没有关系

你可以查看上面的文档,'BlobItem' 没有转换为 'AppendBlobItem' 的方法。

所以答案是否定的。