获取容器中的最后一个 Azure Blob
我的容器中有一个具有以下名称的 blob 列表,
例如。 项目1 项目2 项目3 项目9 项目10 第12项 item45
我想获取第一个和最后一个 blob,在本例中是 item1 和 item45
但是,当我使用 cloudblobclient.cloudblobdirectory.listblobs.last 时,item9 返回给我,而不是我想要的。从列表中获取最后一项 (45) 的最佳方法是什么?
只能考虑遍历完整列表,然后对于每个项目,获取字符“item”后面的数字,并将该数字与之前的最高值或最低值进行比较。由于前 4 个字符是固定的,我将结合“item”和 upperCnt:
for each blobitem in listblobs
iCurrCnt = numeric(blobitem.uri.absolutepath.substring(4))
if iCurrCnt > iHigherCnt then
iHigherCnt = iCurrCnt
因此最后一个 blob (item45):
strHighestCntFileName = "item" + iHigherCnt
是否有其他方法可以做到这一点?当项目列表增长到数千时担心性能。我只对第一个和最后一个斑点感兴趣。谢谢!
I have a list of blobs with the following names in my container
eg.
item1
item2
item3
item9
item10
item12
item45
I want to get the first and last blob, which in this case is item1 and item45
However when i use cloudblobclient.cloudblobdirectory.listblobs.last, item9 was returned to me, not what I wanted. What would be the best way to get the last item (45) from the list.
Can only think of running through the full list, then for each item, get the number after the characters "item" and compare that number to previous high or low. Since the first 4 characters are fixed, I will combine the "item" and higherCnt:
for each blobitem in listblobs
iCurrCnt = numeric(blobitem.uri.absolutepath.substring(4))
if iCurrCnt > iHigherCnt then
iHigherCnt = iCurrCnt
thus the blob that was the last (item45):
strHighestCntFileName = "item" + iHigherCnt
Is there an alternate way to do this? Worries about performance when the item list grows to thousands. I am only interested in the first and last blob. Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我认为您可以通过以下方式实现此目的:
获取容器中存在的所有 blob 的列表,然后获取所需的 filer blob。
列出容器中现有的 blob 时使用 blob 前缀。因此,如果您知道第一个和最后一个 Blob 名称,那么您可以在 Blob 前缀中使用它,这将返回与指定 Blob 前缀匹配的 Blob 列表。
希望这有帮助。
问候,
阿米特·贾恩
www.cerebrata.com
I think there are following ways you can achieve this thing:
Get the list of all blob existing in container and then filer blob which you want.
Use blob prefix when listing blobs existing in container. So if you have an idea of 1st and last blob name then you can use it in blob prefix, which will return you the list of blobs matching specified blob prefix.
Hope this helps.
Regards,
Amit jain
www.cerebrata.com