zoukankan      html  css  js  c++  java
  • C#从SQL server数据库中读取l图片和存入图片

    本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下:

        private void button1_Click(object sender, EventArgs e)

            {

              openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";

                if(openFileDialog1.ShowDialog()==DialogResult.OK)

                {

                  string fullpath =openFileDialog1.FileName;//文件路径

                  FileStream fs = new FileStream(fullpath, FileMode.Open);

                    byte[] imagebytes =new byte[fs.Length];

                    BinaryReader br = new BinaryReader(fs);

                    imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));

                    //打开数据库

                    SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05");

                    con.Open();

                    SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con);

                    com.Parameters.Add("ImageList", SqlDbType.Image);

                    com.Parameters["ImageList"].Value = imagebytes;

                   com.ExecuteNonQuery();

                   con.Close();

                 }    

    }

    本实例主要介绍如何从数据库中把图片读出来。实现本实例主要是利用SqlDataReader从数据库中把Image字段值读出来,赋给一个byte[]字节数组,然后使用MemoryStream类与Bitmap把图片读取出来。主要代码如下:

        private void button1_Click(object sender, EventArgs e)

            {

                     byte[] imagebytes = null;

                    //打开数据库

                SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05");

                    con.Open();

                    SqlCommand com = new SqlCommand("select top 1* from tb_09", con);

                    SqlDataReader dr = com.ExecuteReader();

                    while (dr.Read())

                    {

                        imagebytes = (byte[])dr.GetValue(1);

                    }

                    dr.Close();

                    com.Clone();

                    con.Close();

                    MemoryStream ms = new MemoryStream(imagebytes);

                    Bitmap bmpt = new Bitmap(ms);

                    pictureBox1.Image = bmpt;

            }

    本实例主要介绍如何只允许输入指定图片格式。用OpenFileDialog控件打开图片文件,只要将OpenFileDialog控件的Filter属性指定为特定的图片格式即可。例如,打开.bmp文件的图片,主要代码如下:

    this.openFileDialog1.Filter = "bmp文件(*.bmp)|*.bmp";

    在用pictureBox控件输入图片时,要想统一图片大小,只需把控件的SizeMode属性值设为StretchImage即可,StretchImage值表示图像的大小将调整为控件的大小。这样,图片的大小就统一了。

  • 相关阅读:
    算法训练 P1103
    算法训练 表达式计算
    算法训练 表达式计算
    基础练习 时间转换
    基础练习 字符串对比
    Codeforces 527D Clique Problem
    Codeforces 527C Glass Carving
    Codeforces 527B Error Correct System
    Codeforces 527A Glass Carving
    Topcoder SRM 655 DIV1 250 CountryGroupHard
  • 原文地址:https://www.cnblogs.com/hfzsjz/p/1740778.html
Copyright © 2011-2022 走看看