FileStream fs = new FileStream("P1060218.jpg", FileMode.Open);
Byte[] byrte=new Byte[fs.Length ];
fs.Read(byrte,0, Convert.ToInt32(fs.Length));
fs.Close();
图片P1060218.jpg放在debug目录下面。然后把byrte存储到数据库中,这应该是往数据库中存储的图片的路径吧?
Byte[] byrte=new Byte[fs.Length ];
fs.Read(byrte,0, Convert.ToInt32(fs.Length));
fs.Close();
图片P1060218.jpg放在debug目录下面。然后把byrte存储到数据库中,这应该是往数据库中存储的图片的路径吧?
FileStream fs = new FileStream("P1060218.jpg", FileMode.Open);//得到FileStream对象 即文件的流对象
Byte[] byrte=new Byte[fs.Length ]; //定义字节数组
fs.Read(byrte,0, Convert.ToInt32(fs.Length)); 读取流 并且存入数组byrte
fs.Close(); //关闭然后你说 出错 是哪出错呢?
string sql = "select photo from TB_Worker where Number =1";
DataSet ds = new DataSet();
SqlDataAdapter sda = new SqlDataAdapter(sql, con);
sda.Fill(ds, "TB_Worker");
Byte[] byrte = (Byte[])ds.Tables["TB_Worker"].Rows[0].ItemArray[0];
MemoryStream my = new MemoryStream(byrte,true);
my.Read(byrte, 0, byrte.Length);
Image image = Image.FromStream(my);
pictureBox1.BackgroundImage = image; 会报参数无效的错误。帮忙看看。谢谢
string sql = "select photo from TB_Worker where Number =1";
DataSet ds = new DataSet();
SqlDataAdapter sda = new SqlDataAdapter(sql, con);
sda.Fill(ds, "TB_Worker");
Byte[] byrte = (Byte[])ds.Tables["TB_Worker"].Rows[0].ItemArray[0];
MemoryStream my = new MemoryStream(byrte,true);
my.Read(byrte, 0, byrte.Length);
Image image = Image.FromStream(my);
pictureBox1.BackgroundImage = image; 存进去的是image字段类型的。 会报参数无效的错误。帮忙看看。谢谢
DataSet ds = new DataSet();
SqlDataAdapter sda = new SqlDataAdapter(sql, con);
sda.Fill(ds, "TB_Worker");
Byte[] byrte = (Byte[])ds.Tables["TB_Worker"].Rows[0].ItemArray[0];索引是否正确,table里面的数据是否正确
MemoryStream my = new MemoryStream(byrte,true);
my.Read(byrte, 0, byrte.Length);这一句是多余的
Image image = Image.FromStream(my);
pictureBox1.BackgroundImage = image; 断电调试一下看看获取到的数据是什么
SqlCommand cmd = new SqlCommand(sqlStr, conn); //其他的你懂的~ conn连接~~
sqlStr = "insert [表名][Photo])values(@Photo)"; //设置Sql语句fs.Read(data1, 0, (int)fs.Length); //把照片存到数组中
cmd.Parameters.Add("@Photo", SqlDbType.Image); //这里选择Image类型
cmd.Parameters["@Photo"].Value = data1; // 给@Photo参数赋值,把照片存到byte数组中
cmd.ExecuteNonQuery(); //执行SQL语句
存~
Image image = Image.FromStream(my); 最后找出是my无效。为啥啊?
//存入图片
SqlConnection conn = new SqlConnection("server=.;database=TestDB;uid=sa;pwd=1qaz@wsx#EDC");
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "insert into UserHead values(@headImg,@userId)";
cmd.Parameters.Add("@headImg", SqlDbType.Image);
cmd.Parameters.Add("@userId", SqlDbType.VarChar);
MemoryStream ms = new MemoryStream();
Image.FromFile("test.jpg").Save(ms, ImageFormat.Jpeg);
cmd.Parameters["@headImg"].Value = ms.GetBuffer();
cmd.Parameters["@userId"].Value = "test001";
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();//取出图片
SqlConnection conn = new SqlConnection("server=.;database=TestDB;uid=sa;pwd=1qaz@wsx#EDC");
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "select * from UserHead";
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
sda.Fill(dt);
byte[] buffer = (byte[])dt.Rows[0].ItemArray[0];//注意你获取到的byte数组是否正确
MemoryStream ms = new MemoryStream(buffer);
pictureBox1.Image = Image.FromStream(ms);
ms.Close();
你参考一下