图片、byte和stream转换
1、byte转图片
/// <summary> /// 读取byte[]并转化为图片 /// </summary> /// <param name="bytes">byte[]</param> /// <returns>Image</returns> public static Image GetImageByBytes(byte[] bytes) { Image photo = null; using (MemoryStream ms = new MemoryStream(bytes)) { ms.Position = 0; photo = Image.FromStream(ms, true); } return photo; }
2、Base64和byte转换
var sealData = "iVBORw0KGgoAAAANSUhEUgAAAP8AAAD/CAMAAAAJ1vD4AAADAFBMVEX/////。。。g=="; var bytes = Convert.FromBase64String(sealData); string inputString = System.Convert.ToBase64String(bytes);
3、Image转byte[]
byte[] imgbyte = dal.GetImage(item_code); Bitmap myImage = new Bitmap(GetImageByBytes(imgbyte)); MemoryStream ms = new MemoryStream(); // 内存流 myImage.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);bReturn = ms.GetBuffer();// 转byte[]
4、stream和byte[]转换
/// 将 Stream 转成 byte[] public byte[] StreamToBytes(Stream stream) { byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); // 设置当前流的位置为流的开始 stream.Seek(0, SeekOrigin.Begin); return bytes; } /// 将 byte[] 转成 Stream public Stream BytesToStream(byte[] bytes) { Stream stream = new MemoryStream(bytes); return stream; }
5、stream和文件
public void StreamToFile(Stream stream,string fileName) { // 把 Stream 转换成 byte[] byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); // 设置当前流的位置为流的开始 stream.Seek(0, SeekOrigin.Begin); // 把 byte[] 写入文件 FileStream fs = new FileStream(fileName, FileMode.Create); BinaryWriter bw = new BinaryWriter(fs); bw.Write(bytes); bw.Close(); fs.Close(); } public Stream FileToStream(string fileName) { // 打开文件 FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); // 读取文件的 byte[] byte[] bytes = new byte[fileStream.Length]; fileStream.Read(bytes, 0, bytes.Length); fileStream.Close(); // 把 byte[] 转换成 Stream Stream stream = new MemoryStream(bytes); return stream; }
6、url转byte[]
using (FileStream fs = new FileStream(filepath + filename, FileMode.Open)) { BinaryReader br = new BinaryReader(fs); byte[] contentBytes = br.ReadBytes(Convert.ToInt32(fs.Length)); })

浙公网安备 33010602011771号