软件编程
位置:首页>> 软件编程>> C#编程>> C#实现上传下载图片

C#实现上传下载图片

作者:ClearLoveQ  发布时间:2022-12-15 22:48:22 

标签:C#,上传,下载

本文实例为大家分享了C#实现上传下载图片的具体代码,供大家参考,具体内容如下

1.首先我们通过流来上传下载图片,所有操作只停留在流这一层


MemoryStream ms;
 //左侧按钮
 private void button1_Click(object sender, EventArgs e)
 {  
  ms = new MemoryStream();
  Image bi =pictureBox1.Image;
  bi.Save(ms, pictureBox1.Image.RawFormat);//将图片存入流中
 }
 //右侧按钮
 private void button2_Click(object sender, EventArgs e)
 {
  Image img = Image.FromStream(ms, true);
  pictureBox2.Image = img;
  ms.Close();  
 }

C#实现上传下载图片

分别点击左侧和右侧按钮,则将左侧图片加载到右侧:(PictureBox的SizeMode属性可以设置图片的填充方式)

C#实现上传下载图片

2.通过将图片转化为流然后转化为字节;将字节转化为流,然后加载图片

图片转化为字节的代码:


public static byte[] ImgToByte(Image img, System.Drawing.Imaging.ImageFormat imgFormat)
 {
  Bitmap bmp = new Bitmap(img);
  MemoryStream memStream = new MemoryStream();
  bmp.Save(memStream, imgFormat);
  memStream.Seek(0, SeekOrigin.Begin); //及时定位流的开始位置
  byte[] btImage = new byte[memStream.Length];
  memStream.Read(btImage, 0, btImage.Length);
  memStream.Close();
  return btImage;
}

字节转化为图片的代码:


public static Image ByteToImg(byte[] btImage)
 {
  MemoryStream memStream = new MemoryStream();
  //Stream memStream = null;
  memStream.Write(btImage, 0, btImage.Length);
  memStream.Position = 0;
  memStream.Seek(0, SeekOrigin.Begin);
  //Bitmap bmp = new Bitmap(memStream, true);
  Image img;
  try
  {
   img = Image.FromStream(memStream, true);
   memStream.Close();
   //img = new Bitmap(memStream);
  }
  catch (Exception ex)
  {
   img = null;
   MessageBox.Show(ex + "");
  }
  finally
  {
   memStream.Close();
  }
  return img;
}

来源:https://blog.csdn.net/ClearLoveQ/article/details/81112994

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com