我有一张存储图片的表,在加载表格时我检索到该数据,并且数据在System.Byte []中。

我希望它以窗口形式显示在图片框中。
 我正在使用C#语言和SQL SERVER 2005

我的代码是这样的:

            Byte[] byteBLOBData = (Byte[])(dt.Rows[count]["stud_photo"]);
           MemoryStream ms = new MemoryStream(byteBLOBData);
           ms.Write(byteBLOBData, 0, byteBLOBData.Length);

           photo.Image = Image.FromStream(ms); --- here i am having an error "Parameter not valid"


请任何人能帮助我...这对我的项目非常重要。先感谢您

最佳答案

将流位置重新设置为开始:

ms.Write(byteBLOBData, 0, byteBLOBData.Length);
ms.Position = 0; // THIS !!!!!
photo.Image = Image.FromStream(ms);


问题在于流的位置在末尾,因此当Image尝试读取它时,它将读取零字节。

关于c# - 将System.Byte []转换为图像并在winform的图片框中显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5431215/

10-11 05:04