2014-11-14 70 views
0

在我的WP8.1 Silverlight應用程序中,我想下載一個文件並將其保存到一個獨立的存儲。下載是好的,但我怎麼能保存它?下載並保存一個HttpRequestMessage C#

的下載,我用這個:

var HttpClientDownloadFile = new Windows.Web.Http.HttpClient(); 

     Windows.Web.Http.HttpRequestMessage request = new Windows.Web.Http.HttpRequestMessage(Windows.Web.Http.HttpMethod.Get, new Uri(downloadUrl)); 
     request.Headers.Add("Range", "bytes=0-"); 

     // Hook up progress handler. 
     Progress<HttpProgress> progressCallback = new Progress<HttpProgress>(OnSendRequestProgress); 
     var tokenSource = new CancellationTokenSource(); 
     Windows.Web.Http.HttpResponseMessage response = await HttpClientDownloadFile.SendRequestAsync(request).AsTask(tokenSource.Token, progressCallback); 

如果我運行調試,在response.content我有我的下載。現在,我想將它保存到隔離存儲中。我怎樣才能做到這一點 ?我應該使用流嗎?

感謝

回答

0

將您的響應流,並寫入到文件

using (var fileStream = await this.storageFile.OpenFileAsync(fileName, FileMode.OpenOrCreate)) 
{  
    await stream.CopyToAsync(fileStream); 
} 
+0

我應該做這樣的事情:使用'(VAR流=新的MemoryStream()){ Windows.Web。 Http.HttpResponseMessage response = await HttpClientDownloadFile.SendRequestAsync(request).AsTask(tokenSource.Token,progressCallback); }'? – seb2020 2014-11-14 17:10:15