0

我正在使用azure blob storage. 我在存储中存储了一个 txt 文件,现在我正在尝试阅读它:

StreamReader reader = new StreamReader(Blob.Uri.AbsoluteUri); 
Blob containes the reference of the blob where txt file is stored.

但在这里我得到了例外(URI formats are not supported.)。我认为streamreader不支持 URI 格式。有人可以为此给我一个更好的工作吗?

(我知道我们可以使用DowmloadToFile的方法 CloudBlob下载文件,然后使用 Server.MapPath 创建一个地址,并放置该地址而不是 URI。但如果有其他更好的解决方案,请告诉我)

4

1 回答 1

3

看看WebClient.OpenReadWebClient.DownloadString方法。

您的代码将如下所示:

var wc = new WebClient();
using(var sourceStream = wc.OpenRead(Blob.Uri.AbsoluteUri)){
    using(var reader = new StreamReader(sourceStream)){
         // Process
    }
}

或者如果文件很小(文本文件通常很小),:

var wc = new WebClient();
var fileContent = wc.DownloadString(Blob.Uri.AbsoluteUri);
于 2012-07-24T09:56:54.953 回答