日期:2014-05-20  浏览次数:20475 次

[菜鸟求助]请帮忙看一段关于从数据库读取图片的代码
以下是显示图片的代码:

1   object   result   =   cmd.ExecuteScalar();
2   Stream   stream   =   new   MemoryStream((byte[])result);
3   const   int   buffersize   =   1024   *   16;
4   byte   []   buffer   =   new   byte   [buffersize];
5   int   count   =   stream.Read(buffer,0,buffersize);
6   while   (count   >   0)
7{
8           Response.OutputStream.Write(buffer,   0,   count);
9           count   =   stream.Read(buffer,   0,   buffersize);
10}

请问第3行   为什么要用常量buffersize=1024   *   16   呢?  

如果哪位大哥有时间的话,能否多一点帮我讲讲这段代码的含义呢?比如第2行我也不是很懂啊.

或者还有别的什么办法可以实现把数据库里的图片(image类型)显示出来呢?

谢谢谢谢,感激不尽!~




------解决方案--------------------
//将result转换为一个二进制字节数组,并创建一个stream
stream = new MemoryStream((byte[])result);

const int buffersize = 1024 * 16;
byte[] buffer = new byte[buffersize];

//将照片内容写入到二进制字节数组Buffer中
int count = stream.Read(buffer, 0, buffersize);

//通过循环语句将Buffer中的内容输出到页面
while (count > 0)
{
Response.OutputStream.Write(buffer, 0, count);
count = stream.Read(buffer, 0, buffersize);
}