[英]How to convert a simple stream(http webresponse) to bitmapimage in c# windows 8?
我尝试了1000次,将一个简单的流(http webresponse)转换为bitmapimage,但没有一个教程在c#windows 8中工作。
例:
BitmapImage image = new BitmapImage();
image.SetSource(stream);
image1.Source = image;
感谢所有回复。
解
InMemoryRandomAccessStream randomAccessStream = new InMemoryRandomAccessStream();
DataWriter writer = new DataWriter(randomAccessStream.GetOutputStreamAt(0));
writer.WriteBytes((byte[])command);
await writer.StoreAsync();
BitmapImage image = new BitmapImage();
image.SetSource(randomAccessStream);
你试过这个吗?
InMemoryRandomAccessStream randomAccessStream = new InMemoryRandomAccessStream();
DataWriter writer = new DataWriter(randomAccessStream.GetOutputStreamAt(0));
writer.WriteBytes(response.Content.ReadAsByteArray());
BitmapImage image = new BitmapImage();
image.SetSource(randomAccessStream);
试试这段代码:
private async Task GetLocalImageAsync(string internetUri, string folderName,
string uniqueName)
{
using (var response = await HttpWebRequest.CreateHttp(internetUri)
.GetResponseAsync())
{
using (var stream = response.GetResponseStream())
{
var folder = await ApplicationData.Current.LocalFolder
.CreateFolderAsync(folderName,
CreationCollisionOption.OpenIfExists);
var file = await folder.CreateFileAsync(
string.Format("{0}", uniqueName),
CreationCollisionOption.ReplaceExisting);
using (var filestream = await file.OpenStreamForWriteAsync())
{
await stream.CopyToAsync(filestream);
await filestream.FlushAsync();
}
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.