ASP.Net将图片以二进制方式存入数据库,并读取

把图片转换成二进制--把二进制转换成图片

        private void button1_Click(object sender, EventArgs e)
        {
            string path = this.textBox1.Text;
            byte[] imgBytesIn = SaveImage(path);
            ShowImgByByte(imgBytesIn);
            //Parameters.Add("@Photo", SqlDbType.Binary).Value = imgBytesIn;

        }
        //将图片以二进制流
        public byte[] SaveImage(String path)
        {
            FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
            BinaryReader br = new BinaryReader(fs);
            byte[] imgBytesIn = br.ReadBytes((int)fs.Length);  //将流读入到字节数组中
            return imgBytesIn;
        }
        //现实二进制流代表的图片
        public void ShowImgByByte(byte[] imgBytesIn)
        {
            MemoryStream ms = new MemoryStream(imgBytesIn);
            pictureBox1.Image = Image.FromStream(ms);
        }

二、将图片保存到数据库中,并从数据库中读取:

        #region 将图片从数据库中读取
        /// <summary>
        /// 将图片从数据库中读取
        /// </summary>
        /// <param name="xs_ID">要读取图片的学号</param>
        /// <param name="ph">pictureBox1控件名</param>
        public void get_photo(string xs_ID, PictureBox ph)//将图片从数据库中读取
        {
            byte[] imagebytes = null;
            getcon();
            SqlCommand con = new SqlCommand("select * from S_jiben where S_num=‘" + xs_ID + "‘", link);
            SqlDataReader dr = con.ExecuteReader();
            while (dr.Read())
            {
                imagebytes =(byte[])dr.GetValue(18);
            }
            dr.Close();
            con_close();
            MemoryStream ms = new MemoryStream(imagebytes);
            Bitmap bmpt = new Bitmap(ms);
            ph.Image = bmpt;
        }
        #endregion
        #region
        public void SaveImage(string MID, OpenFileDialog openF)//将图片以二进制存入数据库中
        {
            string strimg = openF.FileName.ToString();  //记录图片的所在路径
            FileStream fs = new FileStream(strimg, FileMode.Open, FileAccess.Read); //将图片以文件流的形式进行保存
            BinaryReader br = new BinaryReader(fs);
            byte[] imgBytesIn = br.ReadBytes((int)fs.Length);  //将流读入到字节数组中
            getcon();
            StringBuilder strSql = new StringBuilder();
            strSql.Append("update S_jiben Set [email protected] where S_num=" + MID);
            SqlCommand cmd = new SqlCommand(strSql.ToString(), link);
            cmd.Parameters.Add("@Photo", SqlDbType.Binary).Value = imgBytesIn;
            cmd.ExecuteNonQuery();
            con_close();
        }
        #endregion

结伴旅游网www.jieberu.com推推族,免费门票获取平台 www.tuituizu.com
时间: 2024-12-28 17:35:07

ASP.Net将图片以二进制方式存入数据库,并读取的相关文章

用纯ASP代码实现图片上传并存入数据库中

用ASP编写网站应用程序时间长了,难免会遇到各式各样的问题,其中关于如何上传文件到服务器恐怕是遇见最多的问题了,尤其是上传图片,比如你想要在自己的社区里面实现类似网易虚拟社区提供的“每日一星”的功能,就要提供给网友上传照片的功能.上传图片文件到服务器可以使用各种免费的文件上传组件,使用起来功能虽然很强大,但是由于很多情况下,我们只能使用免费的支持ASP的空间或者租用别人的虚拟空间,对于第一种情况,我们根本就没有可能来使用文件上传组件:至于第二种情况,我们也要付出不少的“银子”才可以.除非你拥有自

OleContainer操作Excel以二进制方式读写数据库

需求源头:OleContainer操作Excel,想把Excel以二进制方式存入数据库,并且以二进制方式读取存入流:Procedure SaveToStream(ADOTable1: TAdoTable)var  vStream: TMemoryStream;begin try   try    vStream := TMemoryStream.Create;    vStream.Clear;    OleContainer1.SaveToStream(vStream);    vStream

运用PDO存储将图片、音频文件存入数据库

在数据库中创建表格的时候,有一个字段为image,用来保存图片,那么其类型就是blob,关于blob,百度百科是这样描述的 BLOB (binary large object),二进制大对象,是一个可以存储二进制文件的容器. 在计算机中,BLOB常常是数据库中用来存储二进制文件的字段类型. BLOB是一个大文件,典型的BLOB是一张图片或一个声音文件,由于它们的尺寸,必须使用特殊的方式来处理(例如:上传.下载或者存放到一个数据库). 根据Eric Raymond的说法,处理BLOB的主要思想就是

用纯ASP代码实现图片上传并存入数据库中

用ASP编写网站应用程序时间长了,难免会遇到各式各样的问题,其中 关于如何上传文件到服务器恐怕是遇见最多的问题了,尤其是上传图片,比如 你想要在自己的社区里面实现类似网易虚拟社区提供的"每日一星"的功能, 就要提供给网友上传照片的功能.上传图片文件到服务器可以使用各种免费的 文件上传组件,使用起来功能虽然很强大,但是由于很多情况下,我们只能使 用免费的支持ASP的空间或者租用别人的虚拟空间,对于第一种情况,我们 根本就没有可能来使用文件上传组件:至于第二种情况,我们也要付出不少的 &q

运用.NIT将数据存入数据库、读取数据库(运用封装)陈老师作业

我基础不好,根据所学的知识,书本的例题修改的,也不知道我理解的是否符合老师要求 运用C#将数据存入数据库.并且可以读取数据库里的数据,此项目我运用了封装.我运用了一个窗体将数据存读数据. 我首先创建了一个数据库,库名“数学题库” ,然后创建了一个表“tiku1”, 添加一个类Class1 class Class1    {        public string strCon = @"Data Source=.;Initial Catalog=数学题库;Integrated security=

net9:图片变成二进制流存入XML文档,从XML文档中读出图片以及从XML文档中读取并创建图片文件

原文发布时间为:2008-08-10 -- 来源于本人的百度文章 [由搬家工具导入] fileToXml类: using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;u

将图片以Blob格式存入数据库,再通过Servlet显示到界面

1:为了方便测试,直接将1.png图片存入到数据库中. public static void storePicBlog() throws FileNotFoundException, SQLException, IOException{ Connection conn = JdbcUtil.getConnection(); File f = new File("1.jpg"); FileInputStream fis = new FileInputStream(f); String s

上传的图片转换 base64字符串 存入数据库

public String fileToStr(MultipartFile file) throws IOException{ bate[] data = null; InputStream is =  file.getInputStream(); data = new byte[is.available()]; is.read(data); is.close(); String encode = Base64.getEncoder().encodeToString(data); String

asp.net将图片转成二进制存入数据库

一.代码如下 1 int code = int.Parse(this.TextBox1.Text);//图片编码 2 string value = this.FileUpload1.PostedFile.FileName.ToString();//图片路径 3 string type = value.Substring(value.LastIndexOf(".") + 1); 4 FileStream fs = File.OpenRead(value); 5 byte[] conten