簡體   English   中英

WinRt-FileSavePicker,將圖像從URI保存到文件

[英]WinRt - FileSavePicker, save image from URI to file

我想問一下如何將圖像從流保存到文件。 我已經創建了此FileSavePicker,但是我不知道如何保存Uri中的圖像

謝謝

  StreamReader reader = new StreamReader(dataStream);
                // Read the content.
               string responseFromServer = reader.ReadLine(); // URi with image


 private async void saveClick(object sender, RoutedEventArgs e)
    {
       var Picker = new FileSavePicker();
       Picker.FileTypeChoices.Add("Image", new List<string>() { ".jpg" });
       StorageFile file = await Picker.PickSaveFileAsync();



    }

我假設您已經將圖像下載到dataStream中。 如果不是這樣,您可以使用HttpClient類:

var uri = new Uri("http://cdn.sstatic.net/stackexchange/img/logos/so/so-logo-med.png");
Windows.Web.Http.HttpClient httpClient = new HttpClient();
var stream = await httpClient.GetInputStreamAsync(uri);
Stream dataStream = stream.AsStreamForRead();

您可以通過在StorageFile上調用OpenStreamForWriteAsync將可寫流寫入您選擇的文件。 對於兩個流,您可以調用CopyTo將其從dataStream復制到保存流。

var Picker = new FileSavePicker();
Picker.FileTypeChoices.Add("Image", new List<string>() { ".jpg" });
StorageFile file = await Picker.PickSaveFileAsync();
using (Stream saveStream = await file.OpenStreamForWriteAsync())
{
    dataStream.Seek(0, SeekOrigin.Begin);
    await dataStream.CopyToAsync(saveStream);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM