首页 > 技术文章 > C# 实现图片文件到数据流,再到图片文件的转换

flamegreat 2020-01-15 11:17 原文

//----引入必要的命名空间
using System.IO;
using System.Drawing.Imaging;

//----代码部分----//
private byte[] photo;//公用缓冲区

public string SourFilePath;//源图片文件路径

public string ObjFilePath;//目标图片路径

//文件到流的转换
public int FileToStream()

{

	Image img = new Bitmap(SourFilePath);

	MemoryStream stream = new MemoryStream();

	img.Save(stream, ImageFormat.Bmp);

	BinaryReader br = new BinaryReader(stream);

	photo = stream.ToArray();

	stream.Close();

	return 0;

}

//根据流显图
public Image ShowPic()
{

	byte[] bytes = photo;

	MemoryStream ms = new MemoryStream(bytes);

	ms.Position = 0;

	Image img = Image.FromStream(ms);

	ms.Close();

	return img;

}

//反向转换
public int StreamToFile()
{

	byte[] bytes = photo;

	FileStream fs = new FileStream(ObjFilePath, FileMode.Create, FileAccess.Write);

	fs.Write(bytes, 0, bytes.Length);

	fs.Flush();

	fs.Close();

	return 0;
}

推荐阅读