数据库加图片

附:代码

  private System.Windows.Forms.PictureBox pictureBox1;
  private System.Data.SqlClient.SqlCommand cmdExecute;
  private System.Data.SqlClient.SqlConnection connEmployee;
  private Bitmap image;
  private byte[] buffer;

private void ShowMyImage(string fileToDisplay, int xSize, int ySize)
  {
   // Sets up an image object to be displayed.
   if (image != null)
   {
    image.Dispose();
   }

   // Stretches the image to fit the pictureBox.
   pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage ;
   image = new Bitmap(fileToDisplay);
   pictureBox1.ClientSize = new Size(xSize, ySize);
   pictureBox1.Image = (Image) image ;
  }

  private void button1_Click(object sender, System.EventArgs e)
  {
   OpenFileDialog openFileDialog = new OpenFileDialog();
   openFileDialog.Title = "请选择照片";
   openFileDialog.ReadOnlyChecked = true;
   openFileDialog.ShowReadOnly = true;
   openFileDialog.Filter = "所有图片文件|*.*|JPEG(*.JPG;*.JPEG;*.JPEe;*.JFIF)|*.JPG;*.JPEG;*.JPEe;*.JFIF|位图文件(*.BMP)|*.BMP|GIF(*.GIF)|*.GIF";

   string pictureName = "";
   if (openFileDialog.ShowDialog() == DialogResult.OK)
   {
    pictureName = openFileDialog.FileName;
    this.ShowMyImage(pictureName, 112, 130);
   }

   if (pictureName != "")
   {
    FileStream stream = new FileStream(pictureName, FileMode.Open, FileAccess.Read);
    buffer = new byte[stream.Length];
    stream.Read(buffer, 0, (int)stream.Length);
    stream.Close();
   }

   this.cmdExecute.CommandText = @"INSERT INTO Photo_Test(Photo) values(@Photo)";
   this.cmdExecute.Parameters.Add("@Photo", SqlDbType.Image, buffer.Length, "Photo");
   this.cmdExecute.Parameters["@Photo"].Value = buffer;
   if (this.connEmployee.State == ConnectionState.Closed)
    this.connEmployee.Open();
   this.cmdExecute.ExecuteNonQuery();
  }

  private void button2_Click(object sender, System.EventArgs e)
  { 
   SqlDataAdapter da = new SqlDataAdapter("Select * from Photo_Test WHERE ID = 20", this.connEmployee);
   DataSet ds = new DataSet();
   da.Fill(ds);
   DataTable dt = ds.Tables[0];
   byte[] b = (byte[])dt.Rows[0][1];

   if(b.Length > 0)
   {
    MemoryStream stream = new MemoryStream(b, true);
    stream.Write(b, 0, b.Length);
     
    image=new Bitmap(stream);
    
    stream.Close();
    this.pictureBox1.Image = image;
   }
  }


阅读更多
个人分类: .net
上一篇数据库加图片
想对作者说点什么? 我来说一句

数据库图片保存与显示

2011年07月19日 4.17MB 下载

java 程序图片加水印

2010年07月05日 7KB 下载

批量修改图片,去加水印

2011年04月06日 11.05MB 下载

图片加水印小工具绿色版

2010年11月10日 23KB 下载

动太图片加字软件绿色版

2009年08月29日 6.25MB 下载

没有更多推荐了,返回首页

关闭
关闭