c# Bitmap byte[] Stream 文件相互转换
- //byte[] 转图片
- publicstatic Bitmap BytesToBitmap(byte[] Bytes)
- {
- MemoryStream stream = null;
- try
- {
- stream = new MemoryStream(Bytes);
- returnnew Bitmap((Image)new Bitmap(stream));
- }
- catch (ArgumentNullException ex)
- {
- throw ex;
- }
- catch (ArgumentException ex)
- {
- throw ex;
- }
- finally
- {
- stream.Close();
- }
- }
- //图片转byte[]
- publicstaticbyte[] 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[] 之间的转换
- * - - - - - - - - - - - - - - - - - - - - - - - */
- /// <summary>
- /// 将 Stream 转成 byte[]
- /// </summary>
- publicbyte[] StreamToBytes(Stream stream)
- {
- byte[] bytes = newbyte[stream.Length];
- stream.Read(bytes, 0, bytes.Length);
- // 设置当前流的位置为流的开始
- stream.Seek(0, SeekOrigin.Begin);
- return bytes;
- }
- /// <summary>
- /// 将 byte[] 转成 Stream
- /// </summary>
- public Stream BytesToStream(byte[] bytes)
- {
- Stream stream = new MemoryStream(bytes);
- return stream;
- }
- /* - - - - - - - - - - - - - - - - - - - - - - - -
- * Stream 和 文件之间的转换
- * - - - - - - - - - - - - - - - - - - - - - - - */
- /// <summary>
- /// 将 Stream 写入文件
- /// </summary>
- publicvoid StreamToFile(Stream stream,string fileName)
- {
- // 把 Stream 转换成 byte[]
- byte[] bytes = newbyte[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();
- }
- /// <summary>
- /// 从文件读取 Stream
- /// </summary>
- public Stream FileToStream(string fileName)
- {
- // 打开文件
- FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);
- // 读取文件的 byte[]
- byte[] bytes = newbyte[fileStream.Length];
- fileStream.Read(bytes, 0, bytes.Length);
- fileStream.Close();
- // 把 byte[] 转换成 Stream
- Stream stream = new MemoryStream(bytes);
- return stream;
- }
c# Bitmap byte[] Stream 文件相互转换的更多相关文章
- BufferHelp byte[] Stream string FileStream Image Bitmap
/******* * *** ***** ** ** * * * * * * * * ***** * * * * * * * * * * * * * * * ******* *** * ***** * ...
- byte[] Base64 Stream 之间相互转换
图片 base64转byte[] /// <summary> /// 保存base64图片,返回阿里云地址 /// </summary> /// <param name= ...
- 【转】Drawable /Bitmap、String/InputStream、Bitmap/byte[]
原文:http://wuxiaolong.me/2015/08/10/Drawable-to-Bitmap/ Drawable互转Bitmap Drawable转Bitmap 1234 Resourc ...
- 【.Net】Byte,Stream,File的转换
引言 文件的传输和读写通常都离不开Byte,Stream,File这个类,这里我简单封装一下,方便使用. 帮助类 public static class FileHelper { / ...
- Android中Bitmap,byte[],Drawable相互转化
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable) ...
- 【Android】[转] Android中Bitmap,byte[],Drawable相互转化
一.相关概念 1.Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable) ...
- Android中如何将Bitmap byte裸数据转换成Bitmap图片int数据
Android中如何将Bitmap byte裸数据转换成Bitmap图片int数据 2014-06-11 10:45:14 阅读375次 我们在JNI中处理得到的BMP图片Raw数据,我们应该如何 ...
- Bitmap byte[] InputStream Drawable 互转
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStrea ...
- byte转文件流 下载到本地
此方法将byte类型文件转为文件流保存到本地 byte 经过BASE64Decoder 进行编码之后的类型 所以需要解码 防止出现乱码及文件损毁 /** * byte 转文件 下载到本地 * @par ...
随机推荐
- 回顾:前端模块化和AMD、CMD规范(全)
先列举下一些著名言论: "我想定义一个 each 方法遍历对象,但页头的 util.js 里已经定义了一个,我的只能叫 eachObject 了,好无奈." "Requi ...
- 词频统计 List Array
c# 使用数组进行词频统计 1.先考虑要是使用的数据结构: Array在在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单,但是数组存在一些不足的地方.在数组的两个数据间插入数据 ...
- BugPhobia休息篇章:Beta阶段第IX次Scrum Meeting前奏
特别说明:此次Scrum Meeting不计入正式的Scrum Meeting,因此此次工作仅为第IX次Scrum Meeting的前奏,而笔者也首次采用休息篇章作为子命题 0x01 :Scrum ...
- 读书笔记(chapter4)
进程调度 4.1多任务 1.多任务系统可以划分为:非抢占式多任务和抢占式多任务: (在此模式下,由调度程序来决定什么时候停止一个进程的运行,以便其他进程能够得到执行机会,这个动作叫抢占: 时间片实际上 ...
- 数据驱动测试之—— Excel+TestNG
对于利用Webdriver做自动化的童鞋,对于如何将元素或者输入数据如何和编码分离都应该不会太陌生,本着一边学习一边分享的心态,大概总结了一下关于利用CSV.XML以及Excel来存放数据,然后在结合 ...
- [转帖]以Windows服务方式运行ASP.NET Core程序
以Windows服务方式运行ASP.NET Core程序 原作者blog: https://www.cnblogs.com/guogangj/p/9198031.htmlaspnet的blog 需要持 ...
- .NET Framework 版本和依赖关系[微软官方文档]
.NET Framework 版本和依赖关系 微软官方文档: https://docs.microsoft.com/zh-cn/dotnet/framework/migration-guide/ver ...
- Linux下OSG的编译和安装以及遇到的问题
(第一段日常扯蛋,大家不要看)由于我们教研室所做的RTMapper要用到GDAL,所以就打算看osgearth的源码来熟悉下GDAL库的使用,同时也了解下osgearth中关于带有高程的图像拼接.然而 ...
- number (1)eclipse 连接数据库报错 数据库信息不对导致的出错
- python之datetime类
datetime.time时间类,一般用于显示当地时间 import datetime # 新建对象 datetime_obj = datetime.time(hour=12, minute=20, ...