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();
}
分别点击左侧和右侧按钮,则将左侧图片加载到右侧:(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;
}
以上是 C#实现上传下载图片 的全部内容, 来源链接: utcz.com/z/336644.html