图像到内存流,基于位置

时间:2011-01-06 23:34:04

标签: c#

我在DB&中有一个以字节为单位的图像列location(存储图像的路径), 如果路径为空,我使用image列,如果路径不为空,我将图像加载到字节数组,并将图像作为内存流从文件路径或直接字节图像列返回。

//query
select image,filepath from tablename;
byte[]  Image = { };
if(file path is not empty)
{
 System.Net.WebClient Client = new System.Net.WebClient(); 
 Image = Client.DownloadData("Path of the image-http://....gif");
}
else
{
Image= datareader.GetOrdinal("image"); 
}

如何将字节图像分配给内存流???

1 个答案:

答案 0 :(得分:3)

您可以使用带有MemoryStream实例的byte[]构造函数:

byte[] data = // get data...
using (var stream = new MemoryStream(data))
{

}

如果您已经有一个开放流,那么只需编写数组的内容:

stream.Write(data, 0, data.Length);