【发布时间】:2020-09-07 20:38:41
【问题描述】:
我必须下载一些 Azure 容器中允许匿名访问的 txt 文件。我正在使用 Visual Studio 2017,该程序是一个 Windows 窗体应用程序。
这是我的代码(myUri 是包含 Uri 的字符串,myContainer 是 Container 的字符串):
BlobServiceClient blobServiceClient = new BlobServiceClient(new Uri(myUri));
BlobContainerClient container = blobServiceClient.GetBlobContainerClient(myContainer);
Azure.Pageable<BlobItem> blobs = container.GetBlobs(BlobTraits.All,BlobStates.All);
foreach (BlobItem blob in blobs)
{
BlobClient bc = container.GetBlobClient(blob.Name);
bc.DownloadTo(new FileStream(path + blob.Name, FileMode.Create));
}
我可以在本地路径中看到名称正确的文件,但问题是,如果我尝试使用记事本++ 等通用编辑器打开 .txt,我看到的是编码字符而不是普通的 ASCII。
问题出在哪里?谁能帮帮我?
【问题讨论】:
-
您可以尝试使用
StreamWriter或任何其他支持指定编码(如UTF-8)的API。 -
您的代码对我来说看起来不错。看起来像一个带有“txt”扩展名的二进制文件。我建议通过 Storage Explorer 之类的工具下载文件并检查是否确实如此。
标签: c# azure text download azure-blob-storage