通过c#确定位于Windows Azure存储中的当前文件名

本文关键字:文件名 存储 Azure 定位 Windows 通过 | 更新日期: 2023-09-27 18:05:27

我想知道如何确定当前文件名,位于Windows Azure Blobstorage,一个是在c#代码运行时处理?

我正在使用StreamReader来处理。txt文件,我想知道我目前正在处理的文件的名称。

通过c#确定位于Windows Azure存储中的当前文件名

我建议您不要将blob视为实际的文件。blob术语中的"文件名"是在容器名称之后出现的对象路径中的所有内容…

http://<storage-account-name>.blob.core.windows.net/<container-name>/<blob-name>  

现在"blob名称"可以是类似"myfile/onaday/file.txt"的东西。虽然看起来有一个目录结构,但这实际上只是可以利用的客户端语义。但是对于存储服务来说,整个字符串就是名称。还可以将默认分隔符从'/'更改为另一个字符。这就清楚地表明,层次结构只是客户端/消费者端的结构。

说了这么多,如果你只是想获取"file.txt",我想你有两个选择。1)在创建/上传blob存储时,将此属性作为元数据标签存储在blob上。2)解析来自URI的值,使用各种本地语言方法,或者可能只是查找最后的分隔符('/')并取其后面发生的所有内容。