asp怎么读取存取在数据库里二进制图片呢?江湖告急!

来源:百度知道 编辑:UC知道 时间:2024/06/14 07:31:10
现在数据库里面是可以把图片存储为二进制了,存储的字段是Img,但是怎么从数据库里面读取出图片呢,还有就是一起读取出来3张图片。怎么弄呀 。各位大侠帮帮忙呀。O(∩_∩)O~

最好就是将图片保存到文件夹内。放到数据库里不太好。
读取的方法是将数据库里面img字段的内容用二进制写出到浏览器.
response.binarywrite rs("img")
几张图片就用循环来做。

1.将Image图像文件存入到数据库中

我们知道数据库里的Image类型的数据是"二进制数据",因此必须将图像文件转换成字节数组才能存入数据库中.

要这里有关数据的操作略写,我将一些代码段写成方法,方便直接调用.

//根据文件名(完全路径)
public byte[] SetImageToByteArray(string fileName)
{
FileStream fs = new FileStream(fileName, FileMode.Open);
int streamLength = (int)fs.Length;
byte[] image = new byte[streamLength];
fs.Read(image, 0, streamLength);
fs.Close();
return image;
}

//另外,在ASP.NET中通过FileUpload控件得到的图像文件可以通过以下方法
public byte[] SetImageToByteArray(FileUpload FileUpload1)
{
Stream stream = FileUpload1.PostedFile.InputStream;
byte[] photo = new byte[FileUpload1.PostedFile.ContentLength];
stream.Read(photo, 0, FileUpload1.PostedFile.ContentLength);