我现在关于azure-sdk-winRT中的方法DownloadToStreamAsync,但我无法实现这一点。如何从 blob 存储下载图像,并保存到本地文件夹?
问问题
775 次
1 回答
2
您可以尝试以下类似的方法(非常简单的实现,没有错误检查):
CloudStorageAccount account = new CloudStorageAccount(new StorageCredentials("accountname", "accountkey"), true);
var client = account.CreateCloudBlobClient();
var container = client.GetContainerReference("containername");
var blob = container.GetBlockBlobReference("imagename.ext");//e.g myimage.png
var file = await KnownFolders.PicturesLibrary.CreateFileAsync("imagename.ext", CreationCollisionOption.ReplaceExisting);
var stream = await file.OpenAsync(FileAccessMode.ReadWrite);
await blob.DownloadToStreamAsync(stream);
await stream.FlushAsync();
stream.Dispose();
不过有几点评论:
- 上面的示例写入“图片”库。您需要确保您的 Windows 8 应用程序具有为其定义的功能。
- 尝试查看共享访问签名功能,而不是使用帐户凭据路由,特别是如果您允许应用程序的用户从您的存储帐户下载图像。
于 2013-04-17T08:01:29.113 回答