博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# Byte[]、Image、Bitmap 之间的相互转换
阅读量:6412 次
发布时间:2019-06-23

本文共 2771 字,大约阅读时间需要 9 分钟。

//byte[] 转图片  public static Bitmap BytesToBitmap(byte[] Bytes)          {              MemoryStream stream = null;              try              {                  stream = new MemoryStream(Bytes);                  return new Bitmap((Image)new Bitmap(stream));              }              catch (ArgumentNullException ex)              {                  throw ex;              }              catch (ArgumentException ex)              {                  throw ex;              }              finally              {                  stream.Close();              }          }     //图片转byte[]           public static byte[] BitmapToBytes(Bitmap Bitmap)          {              MemoryStream ms = null;              try              {                  ms = new MemoryStream();                  Bitmap.Save(ms, Bitmap.RawFormat);                  byte[] byteImage = new Byte[ms.Length];                  byteImage = ms.ToArray();                  return byteImage;              }              catch (ArgumentNullException ex)              {                  throw ex;              }              finally              {                  ms.Close();              }          }      }    =====================    * 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;  }      /* - - - - - - - - - - - - - - - - - - - - - - - -   * Stream 和 文件之间的转换  * - - - - - - - - - - - - - - - - - - - - - - - */  ///   /// 将 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();  }    ///   /// 从文件读取 Stream  ///   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;  }

 

转载于:https://www.cnblogs.com/testsec/p/6095626.html

你可能感兴趣的文章
tmux 常用快捷键
查看>>
linux下端口转发工具
查看>>
spring 中实现文件上传
查看>>
JAVA调用lp_solve配置详解
查看>>
BMP文件格式详解(BMP file format)
查看>>
25. [Microsoft][ODBC SQL Server Driver][DBNETLI...
查看>>
android开发过程中遇到错误的笔记
查看>>
JS实现继承的几种方式
查看>>
Spring MVC 4.x + fastjson 1.2.7,封装的List<?>参数
查看>>
svn培训
查看>>
js选中问题
查看>>
CentOS 7 Shell脚本编程第二讲 Shell 脚本创建和执行
查看>>
protobuf
查看>>
4.Java基础复习--Set
查看>>
七:Mysql的乐观锁与悲观锁机制
查看>>
CSS滤镜及渐变 (filter样式表属性)
查看>>
调用上面的@InitBinder 解决客户端上传时间参数转换的问题
查看>>
net.sf.json.JSONException: There is a cycle in the hierarchy异常,解决方法
查看>>
OpenStack centos版安装(二)
查看>>
Tomcat虚拟根目录与虚拟子目录
查看>>