winfrom 图片互传
生活随笔
收集整理的這篇文章主要介紹了
winfrom 图片互传
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
private void button1_Click(object sender, EventArgs e)//從硬盤(pán)打開(kāi)圖片顯示在窗體里面{OpenFileDialog op = new OpenFileDialog();//造一個(gè)打開(kāi)對(duì)話框DialogResult dr =op.ShowDialog();//將打開(kāi)對(duì)話框顯示出來(lái)if(dr==DialogResult.OK) //如果點(diǎn)的是"打開(kāi)"{FileStream fs = new FileStream(op.FileName,FileMode.Open); // 獲取你打開(kāi)圖片的路徑 存到fs流里面去//MessageBox.Show(op.FileName);Image img = System.Drawing.Bitmap.FromStream(fs);//通過(guò)繪圖函數(shù)把fs畫(huà)出來(lái)pictureBox1.Image = img;//圖片框的圖片內(nèi)容}}
//下面是打開(kāi)一張圖片存到數(shù)據(jù)庫(kù)里面去private void button2_Click(object sender, EventArgs e) //打開(kāi)一張圖片存到數(shù)據(jù)庫(kù)里面去 {OpenFileDialog op = new OpenFileDialog();DialogResult dr = op.ShowDialog();if (dr == DialogResult.OK){FileStream fs = new FileStream(op.FileName,FileMode.Open); //獲取你打開(kāi)圖片的路徑存到fs里面去//下面開(kāi)始將路徑轉(zhuǎn)化為字節(jié) 存到數(shù)據(jù)庫(kù)里面去BinaryReader br = new BinaryReader(fs); //把fs(存放圖片路徑的流)轉(zhuǎn)化為二進(jìn)制 存到br里面去 BinaryReader 二進(jìn)制讀取器//int[] x= new int[10];byte[] butter=new byte[fs.Length]; //造一個(gè)字節(jié)類(lèi)型的數(shù)組butter = br.ReadBytes((int)fs.Length); //給字節(jié)butter賦值 ,賦的值是轉(zhuǎn)化為二進(jìn)制數(shù)據(jù)的流//下面開(kāi)始連接數(shù)據(jù)庫(kù) ,然后將圖片存到里面去SqlConnection conn = new SqlConnection("server=.;database=Cml;user=sa;pwd=123");SqlCommand cmd = conn.CreateCommand();conn.Open();cmd.CommandText = "insert into lk values(@s)";cmd.Parameters.Clear();cmd.Parameters.Add("@s",butter); //butter 打開(kāi)圖片的路徑→二進(jìn)制數(shù)據(jù)→字節(jié) cmd.ExecuteNonQuery();cmd.Dispose();conn.Close();}}
private void button3_Click(object sender, EventArgs e)//從數(shù)據(jù)庫(kù)里調(diào)圖片顯示在窗體上{SqlConnection conn = new SqlConnection("server=.;database=Cml;user=sa;pwd=123");SqlCommand cmd = conn.CreateCommand();conn.Open();cmd.CommandText = "select top 1* from lk order by ids desc"; //order by 排序 group by 分組SqlDataReader dr = cmd.ExecuteReader();dr.Read();//開(kāi)始讀取數(shù)據(jù)byte[] butter = (byte[])dr["img"]; //butter現(xiàn)在是字節(jié),但是窗體里面的圖片類(lèi)型是image的 ,所以要轉(zhuǎn)回去 MemoryStream 是記憶流MemoryStream ms = new MemoryStream(butter);//已經(jīng)把butter轉(zhuǎn)換成流了Image img = System.Drawing.Bitmap.FromStream(ms); //將流繪制成圖片pictureBox1.Image = img;} ?
//下面是打開(kāi)一張圖片存到數(shù)據(jù)庫(kù)里面去private void button2_Click(object sender, EventArgs e) //打開(kāi)一張圖片存到數(shù)據(jù)庫(kù)里面去 {OpenFileDialog op = new OpenFileDialog();DialogResult dr = op.ShowDialog();if (dr == DialogResult.OK){FileStream fs = new FileStream(op.FileName,FileMode.Open); //獲取你打開(kāi)圖片的路徑存到fs里面去//下面開(kāi)始將路徑轉(zhuǎn)化為字節(jié) 存到數(shù)據(jù)庫(kù)里面去BinaryReader br = new BinaryReader(fs); //把fs(存放圖片路徑的流)轉(zhuǎn)化為二進(jìn)制 存到br里面去 BinaryReader 二進(jìn)制讀取器//int[] x= new int[10];byte[] butter=new byte[fs.Length]; //造一個(gè)字節(jié)類(lèi)型的數(shù)組butter = br.ReadBytes((int)fs.Length); //給字節(jié)butter賦值 ,賦的值是轉(zhuǎn)化為二進(jìn)制數(shù)據(jù)的流//下面開(kāi)始連接數(shù)據(jù)庫(kù) ,然后將圖片存到里面去SqlConnection conn = new SqlConnection("server=.;database=Cml;user=sa;pwd=123");SqlCommand cmd = conn.CreateCommand();conn.Open();cmd.CommandText = "insert into lk values(@s)";cmd.Parameters.Clear();cmd.Parameters.Add("@s",butter); //butter 打開(kāi)圖片的路徑→二進(jìn)制數(shù)據(jù)→字節(jié) cmd.ExecuteNonQuery();cmd.Dispose();conn.Close();}}
private void button3_Click(object sender, EventArgs e)//從數(shù)據(jù)庫(kù)里調(diào)圖片顯示在窗體上{SqlConnection conn = new SqlConnection("server=.;database=Cml;user=sa;pwd=123");SqlCommand cmd = conn.CreateCommand();conn.Open();cmd.CommandText = "select top 1* from lk order by ids desc"; //order by 排序 group by 分組SqlDataReader dr = cmd.ExecuteReader();dr.Read();//開(kāi)始讀取數(shù)據(jù)byte[] butter = (byte[])dr["img"]; //butter現(xiàn)在是字節(jié),但是窗體里面的圖片類(lèi)型是image的 ,所以要轉(zhuǎn)回去 MemoryStream 是記憶流MemoryStream ms = new MemoryStream(butter);//已經(jīng)把butter轉(zhuǎn)換成流了Image img = System.Drawing.Bitmap.FromStream(ms); //將流繪制成圖片pictureBox1.Image = img;} ?
轉(zhuǎn)載于:https://www.cnblogs.com/w-wz/p/4562160.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的winfrom 图片互传的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: php 迭代器
- 下一篇: C语言学习笔记--函数与指针