Image图片存入数据库,快速结贴,不超过20分钟

神奇的章鱼哥 2008-05-13 03:20:45
前提是已知一个Image实例,怎么加入到数据库
表:
KH varchar(50),
Img Image

不要用FileStream这个,因为在修改的情况下,Image是读出来的,不是从打开文件对话框里出来的。

谢谢,急速结贴!
...全文
143 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
不好意思啊,超过20分钟了,本来想加分的
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
多谢各位了,搞定了
「已注销」 2008-05-13
  • 打赏
  • 举报
回复
从数据库读出来的时侯,是没有FileStream不过至少应该有byte[]吧,你既然只修改款号,那图片的字段只显示一下就行了吧,在修改的时侯不改这个字段就行了吧,再说图片只能换不能改啊
starts_2000 2008-05-13
  • 打赏
  • 举报
回复

PictureBox pictureBox = new PictureBox();
pictureBox.Image = pictureBox1.InitialImage;
System.IO.MemoryStream stream = new System.IO.MemoryStream();
pictureBox.Image.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg);

可以存为内存流啊。
harisonh2l 2008-05-13
  • 打赏
  • 举报
回复
临时文件可以用完就删除掉
ericzhangbo1982111 2008-05-13
  • 打赏
  • 举报
回复
MemoryStream ms = new MemoryStream();
picturebox.Image.Save(ms,ImageFormat.Gif);
byte[] bytes = ms.GetBuffer();
这样不就取得了吗。
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
要1天后才能加分?郁闷
先把Image的图片保存,然后再用FileStream ——这样不好吧,还搞个临时文件出来
Ki1381 2008-05-13
  • 打赏
  • 举报
回复
还原数据的时候你可以得到byte [], update 的时候仍然使用这个byte []呀
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
超过20分钟了,还没答案啊,加分了,但求答案!
51Crack 2008-05-13
  • 打赏
  • 举报
回复
先把Image的图片保存,然后再用FileStream
半小时了,该结了!
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
可能问题没有说清楚:
一个款号,对应了一个图片,以Image字段保存这个图片

新增的时候,是有FileStream,没错,可以

但是修改的时候,因为PictrueBox控件的Image是从数据库里读出来的,不存在FileStream,因为我可能就改下款号的名字,不改图片

这个时候,FileStream从何而来?根本就没有path

先确认个问题,假如有个文件图片a.jpg,你的Img是打算存储文件本身的byte [] 还是 显示图片时的内存流
--------------------------------------------------------------------------------------
你认为那种方式方便存储与读写?你帮我出个主意,我懵了。
wzlrxbj 2008-05-13
  • 打赏
  • 举报
回复
用FileStream没问题呀,只要你给出图片的路径


picStream("E:\\photo1\\photo2\\photo3\\1.bmp");

public byte[] picStream(string picpath)
{
FileStream fs = new FileStream(picpath, FileMode.Open);
BinaryReader br = new BinaryReader(fs);
byte[] bytemp = br.ReadBytes(Convert.ToInt32(br.BaseStream.Length));
br.Close();
fs.Close();
return bytemp;
}
Ki1381 2008-05-13
  • 打赏
  • 举报
回复
先确认个问题,假如有个文件图片a.jpg,你的Img是打算存储文件本身的byte [] 还是 显示图片时的内存流
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
或者说怎么得到Image的byte[]
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
可以,怎么从Image转成memorystream
Ki1381 2008-05-13
  • 打赏
  • 举报
回复
可以用MemoryStream吗
神奇的章鱼哥 2008-05-13
  • 打赏
  • 举报
回复
查了N多文章,都是从FileStream里来的,估计是抄来抄去的

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧