首页 > 编程 > C# > 正文

C#实现上传下载图片

2020-01-24 00:16:30
字体:
来源:转载
供稿:网友

本文实例为大家分享了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();    }

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

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;}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表