为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

读取二进制

2011-07-20 4页 pdf 77KB 32阅读

用户头像

is_461465

暂无简介

举报
读取二进制 1.将图片以二进制存入数据库 2.读取二进制图片在页面显示 3.设置 Image控件显示从数据库中读出的二进制图片 4.GridView中 ImageField以 URL方式显示图片 5.GridView显示读出的二进制图片 ==================== 1.将图片以二进制存入数据库 -------------------------- //保存图片到数据库 protected void Button1_Click(object sender, EventArgs e) { //图片路径 ...
读取二进制
1.将图片以二进制存入数据库 2.读取二进制图片在页面显示 3.设置 Image控件显示从数据库中读出的二进制图片 4.GridView中 ImageField以 URL方式显示图片 5.GridView显示读出的二进制图片 ==================== 1.将图片以二进制存入数据库 -------------------------- //保存图片到数据库 protected void Button1_Click(object sender, EventArgs e) { //图片路径 string strPath = "~/photo/03.JPG"; string strPhotoPath = Server.MapPath(strPath); //读取图片 FileStream fs = new System.IO.FileStream(strPhotoPath, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fs); byte[] photo = br.ReadBytes((int)fs.Length); br.Close(); fs.Close(); //存入 SqlConnection myConn = new SqlConnection("Data Source=127.0.0.1;Initial Catalog=TestDB;User ID=sa;Password=sa"); string strComm = " INSERT INTO personPhoto(personName, personPhotoPath, personPhoto) "; strComm += " VALUES('wangwu', '" + strPath + "', @photoBinary )"; SqlCommand myComm = new SqlCommand(strComm, myConn); myComm.Parameters.Add("@photoBinary", SqlDbType.Binary,photo.Length); myComm.Parameters["@photoBinary"].Value = photo; myConn.Open(); myComm.ExecuteNonQuery(); myConn.Close(); } 2.读取二进制图片在页面显示 -------------------------- //读取图片 SqlConnection myConn = new SqlConnection("Data Source=127.0.0.1;Initial Catalog=TestDB;User ID=sa;Password=sa"); string strComm = " SELECT personPhoto FROM personPhoto WHERE personName='wangwu' "; SqlCommand myComm = new SqlCommand(strComm, myConn); myConn.Open(); SqlDataReader dr = myComm.ExecuteReader(); while (dr.Read()) { byte[] photo = (byte[])dr["personPhoto"]; this.Response.BinaryWrite(photo); } dr.Close(); myConn.Close(); 或 SqlConnection myConn = new SqlConnection("Data Source=127.0.0.1;Initial Catalog=TestDB;User ID=sa;Password=sa"); SqlDataAdapter myda = new SqlDataAdapter(" SELECT personPhoto FROM personPhoto WHERE personName='wangwu' ", myConn); DataSet myds = new DataSet(); myConn.Open(); myda.Fill(myds); myConn.Close(); // byte[] photo = (byte[])myds.Tables[0].Rows[0]["personPhoto"]; this.Response.BinaryWrite(photo); 3.设置 Image控件显示从数据库中读出的二进制图片 --------------------------------------------- SqlConnection myConn = new SqlConnection("Data Source=192.168.0.36;Initial Catalog=TestDB;User ID=sa;Password=sa"); SqlDataAdapter myda = new SqlDataAdapter(" SELECT personPhoto FROM personPhoto WHERE personName='wangwu' ", myConn); DataSet myds = new DataSet(); myConn.Open(); myda.Fill(myds); myConn.Close(); // byte[] photo = (byte[])myds.Tables[0].Rows[0]["personPhoto"]; //图片路径 string strPath = "~/photo/wangwu.JPG"; string strPhotoPath = Server.MapPath(strPath); //保存图片文件 BinaryWriter bw = new BinaryWriter(File.Open(strPhotoPath,FileMode.OpenOrCreate)); bw.Write(photo); bw.Close(); //显示图片 this.Image1.ImageUrl = strPath; 4.GridView中 ImageField以 URL方式显示图片 ---------------------------- 后台直接绑定即可 5.GridView显示读出的二进制图片 ------------------------------ //样板列 //绑定 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowIndex < 0) return; // System.ComponentModel.Container string strPersonName = (string)DataBinder.Eval(e.Row.DataItem, "personName"); Image tmp_Image = (Image)e.Row.Cells[2].FindControl("Image1"); if (!System.Convert.IsDBNull(DataBinder.Eval(e.Row.DataItem, "personPhoto"))) { // byte[] photo = (byte[])DataBinder.Eval(e.Row.DataItem, "personPhoto"); //图片路径 string strPath = "~/photo/" + strPersonName.Trim() + ".JPG"; string strPhotoPath = Server.MapPath(strPath); //保存图片文件 BinaryWriter bw = new BinaryWriter(File.Open(strPhotoPath, FileMode.OpenOrCreate)); bw.Write(photo); bw.Close(); //显示图片 tmp_Image.ImageUrl = strPath; } }
/
本文档为【读取二进制】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索