C#,bitmap参数无效
byte[]buffer=(byte[])(ds.Tables["stu"].Rows[i]["stuImage"]);MemoryStreamms=newMemoryS...
byte[] buffer = (byte[])(ds.Tables["stu"].Rows[i]["stuImage"]);
MemoryStream ms = new MemoryStream();
ms.Write(buffer, 0, buffer.Length);
Bitmap bmp = new Bitmap(ms);//这里提示参数无效
photo = (Image)bmp; 展开
MemoryStream ms = new MemoryStream();
ms.Write(buffer, 0, buffer.Length);
Bitmap bmp = new Bitmap(ms);//这里提示参数无效
photo = (Image)bmp; 展开
4个回答
展开全部
memorystream 换成filestream
追问
各种流我都试过了。总是参数无效。就是保存之前弄了大小。读取的时候也是参数无效。
追答
ms.Write(buffer, 0, buffer.Length);
后面加上
ms.position =0;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
试一下强制转为Stream。
追问
各种流我都试过了。总是参数无效。就是保存之前弄了大小。读取的时候也是参数无效。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
确保你的buffer中的数据的确能被加载,看起来你的buffer是从DataTable中来的,那么能确保DataTable中的数据输入的时候是正确的么?
追问
daatatable的数据输入不正确指的什么不正确?image的大小超出?就算保存之前设定了大小。读取的时候也是参数无效。我想问问win7的操作系统使用vs2005的时候是不是会有点问题??????
追答
不正确就是其中的数据不能被正确加载为Bitmap,所以我很怀疑你的数据完整性,所以需要相应的写入的代码才能确定问题在哪儿
我其他回答里有QQ,你也可以在线问
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果图片长或宽超过6.5万个像素,就会报错.即 图片的像素个数不能超过42.25万。400kb
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询