将流保存为图像
尝试
Image img = System.Drawing.Image.FromStream(myStream);
img.Save(System.IO.Path.GetTempPath() + "\\myImage.Jpeg", ImageFormat.Jpeg);
图像步骤不是必需的。我们可以直接将流写入文件。 – 2010-09-06 12:18:51
是的,但我认为banupriyavijay想在应用程序中的图像的东西。否则,它将只是一个可以使用System.IO.File.Copy()完成的文件复制操作。 – 2010-09-06 12:40:20
当我写这一行图片img = System.Drawing.Image.FromStream(stream);它给我一个错误“参数无效”。 – Chirag 2015-09-23 09:46:14
看看Bitmap Class。有一个构造函数重载需要Stream作为参数,并且有一个名为Save的方法,您可以使用该方法将其另存为文件。
位图步骤不是必需的。我们可以直接将流写入文件。 – 2010-09-06 12:18:29
您的信息流(图片)在下面的代码中是stream
。
using (Stream output = new FileStream ("mycat.jpg"))
{
byte[] buffer = new byte[32*1024];
int read;
while ((read=stream.Read(buffer, 0, buffer.Length)) > 0)
{
output.Write(buffer, 0, read);
}
}
此代码是由Jon Skeet受版权保护我的贡献是文件的名称;)
var tempFile = Path.GetTempFileName();
using (var fs = File.Create(tempFile))
{
source.copyTo(fs);
}
其中源源流。现在您的源码流保存在临时位置(由tempFile给出)。请注意,文件扩展名将是TMP。
Windows Phone的8.1我发现了以下工作得很好。创建您的TempStorageFile在你想要的任何路径,然后像这样传递你的图像的流:
var fileStream = await TempStorageFile.OpenAsync(Windows.Storage.FileAccessMode.ReadWrite);
await RandomAccessStream.CopyAsync(imageStream, fileStream);
你是什么意思的“作为一个图像”是什么意思? – 2010-09-06 11:51:41
这里的图像是指一个jpeg图像文件,它将被存储在临时文件位置,流是System.IO.Stream。 – banupriya 2010-09-06 12:10:32