C#开发学习笔记:图片与字节的互转

C# Socket传输图片 不管是socket还是udp发送图片都是把图片转换成 阅读详情

1.C# WinForm中,图片与字节的互转

System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo("图片所在路径(只需要到文件夹不需要到具体图片文件)");
System.IO.FileInfo[] files = dir.GetFiles();
foreach (System.IO.FileInfo item in files)
{
	if (item.Name.EndsWith("png"))
	{
		System.IO.FileStream fs = item.Open(System.IO.FileMode.Open);
		//用一个字节数组将读取的图片流保存,然后关闭流解锁文件避免下次读取文件(程序未关闭)时报错
		byte[] imgByte = new byte[fs.Length];
		fs.Read(imgByte, 0, imgByte.Length);
		fs.Close();
		Image im = Bitmap.FromStream(new System.IO.MemoryStream(imgByte));//将流转为图片
		System.IO.MemoryStream ms = new System.IO.MemoryStream();
		im.Save(ms, System.Drawing.Imaging.ImageFormat.Png);

		//将流转成字节
		byte[] bytes = new byte[ms.Length];
		//Image.Save()会改变MemoryStream的Position,需要重新Seek到Begin
		ms.Seek(0, System.IO.SeekOrigin.Begin);
		ms.Read(bytes, 0, bytes.Length);

		System.IO.Stream ms1 = new System.IO.MemoryStream(bytes);
		System.Drawing.Image imm = System.Drawing.Image.FromStream(ms1);
		imm.Save(@"保存路径\图片名");
	}

}

2.WPF中字节转为图片,并赋值给Image控件

//获取图片的字节
byte[] image_byte = (byte[])dr["IMAGE_BYTE"];

BitmapImage bitImage = new BitmapImage();
//BitmapImage需要进行初始化,否则像Height、Width等属性会引发异常
bitImage.BeginInit();//开始初始化
bitImage.StreamSource = new MemoryStream(image_byte);
bitImage.EndInit();//结束初始化


Image i = new Image();
i.Source = bitImage;
//设置图片的Margin
Thickness tk = new Thickness(Convert.ToDouble(position_x), Convert.ToDouble(position_y), 0, 0);
i.Margin = tk;
w.Canvas1.Children.Add(i);
Panel.SetZIndex(i, 11);//设置元素的显示顺序(层级)数值越大,层级越高;显示优先级:高层级>低层级

 

C#中图片与流之间的互相转换 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Drawing; using System.IO; using System.Web;namespace Microsoft.Form.Base { class ImageToByte 阅读详情

相关推荐

C#将文件(图片)与Base64字符串进行互转

在项目的开发过程中,我们需要将指定的文件(图片)转为Base64字符串【比如在企业微信群中发送图片等】;或将Base64字符串转为对应的图片保存,来进行相应的业务处理;实现我们想要的效果。

提供C#相关开发 、云计算、运维测试、网络安全相关技术分享与服务,有意向可联系。 3382

C# 图片和byte[]的互相转换

①参数是图片路径:返回Byte[]类型:   [csharp] view plaincopy         //参数是图片的路径           public byte[] GetPictureData(string imagePath)           {               FileStream fs = new FileStream(imagePath, Fil...

lanchg的博客 2435

C#图像与字节数组互转:转换器类实现

本文还有配套的精品资源,点击获取 简介:在.NET框架中,C#编程语言被广泛用于开发各种应用程序,包括图像数据处理。本文介绍了一个C#类库,它可以实现图像对象与字节数组之间的转换,适用于多种应用场景,如网络传输、数据库存储和加密解密。文章详细讨论了如何使用 System.Drawing 命名空间中的类和内存流来实现图像到字节数组以及从字节数组到图像的转换,并提...

weixin_30021053的博客 939

C#编程,图片转字节的一种方法。

1、 Bitmap bitmap = new Bitmap("D:\\tiptop\\桌面\\123.jpg");//获得图片 public byte[] getImgByte(System.Drawing.Image image) //调用方法转字节 { MemoryStream ms = new Memor...

君一席 2864

C#将图片和字节流互相转换并显示到页面上

图片转换成字节流先要转换的IMage对象,转换之后返回字节流。字节流转换成图片,要转换的字节流,转换得到的Image对象,根据图片路径返回图片的字节流,感兴趣的朋友看下下面的代码。 C#将图片和字节流相互转换代码: usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Drawing; usingSystem.IO; namespaceMicrosoft.Form.Base { classImageToByte { /// <summary> /// 图片转换

C#byte数组与Image的相互转换实例代码

C#byte数组与Image的相互转换实例代码 功能需求: 1、把一张图片(png bmp jpeg bmp gif)转换为byte数组存放到数据库。 2、把从数据库读取的byte数组转换为Image对象,赋值给相应的控件显示。 3、从图片byte数组得到对应图片的格式,生成一张图片保存到磁盘上。 这里的Image是System.Drawing.Image。 //Get an image from file Image image = Image.FromFile(D:\\test.jpg); Bitmap bitmap = new Bitmap(D:\\test.

c# 图片转换成字节

c# 图片转换成字节

xie__jin__cheng的博客 1149

高分思路!挑战7天完成一篇网状meta DAY1-7

PASSION!继续析挑战,7天完成一篇网状meta分!

MR_SCI_help的博客 786

C#_图片(image)与字节数组(byte[])的互转方法

通常我们把图片保存到数据库时是以二进制数据(byte[],字节数组 )保存的。在SQlServer中可以看到: 在代码中,我们可以把Image转化为byte[]: private byte[] ImageToByte(Image Picture) { MemoryStream ms = new MemoryStream(); if (Picture == n...

weixin_30821731的博客 2431

ORBSLAM3运行记录(单目+IMU)

ORBSLAM3运行记录1.单目+IMU数据集运行记录自己做的其它测试2.单目+IMU自己采集数据运行记录测试结果 1.单目+IMU数据集运行记录 ORBSLAM3没有预留ROS下单目+IMU的结点,这个需要自己去写代码添加,可以参考这篇博客,《ORBSLAM3 用ROS接口运行双目IMU和单目IMU模式》。我的ROS结点为Mono-IMU,字典文件ORBvoc.txt在ORBSLAM3 / Vocabulary文件夹中,配置文件EuRoC.yaml在ORB_SLAM3 / Examples / Monoc

yys2324826380的博客 1万+

STM32+4G模块+MQTT协议:从零构建稳定可靠的物联网通讯链路

本文详细介绍了如何利用STM32、4G模块和MQTT协议构建稳定可靠的物联网通讯链路。通过硬件选型、AT指令配置和MQTT连接实战,帮助开发者实现低功耗、高可靠性的数据传输,特别适合户外和移动场景应用。

weixin_29191081的博客 334

字节数组bytes[]与图片的互转

将某一张网络图片转成字节数组: public byte[] SG_ServicesFunctionGetPicture(String ImgURL) { try { MemoryStream m = new MemoryStream(); We

1433

AU混响终极指南:从‘干声’到‘空间感’,用总音轨和发送技巧打造专业人声

本文详细介绍了如何在Adobe Audition(AU)中使用混响效果器,通过总音轨和发送技巧将‘干声’转化为具有专业‘空间感’的人声。从混响基础原理到总线架构设置,再到精细控制和自动化调整,全面解析了提升音频质量的实用技巧,适用于音乐制作、播客和内容创作。

weixin_30512089的博客 331

c# 字节流与图片互转

 c#  字节流与图片互转   以前做视频开发的时候写的代码,记下来以备不时之需 下面这个类提供三个方法 1.将Image对象转换为字节流返回 2. 将字节流转换为图片 3.根据图片路径返回字节流   using System; using System.Collections.Generic; using System.Linq; usi

fyshk的专栏 1767

损失函数大汇总(五十三)(Boundary Loss附公式推导与代码)

摘要 Boundary Loss是一种针对图像分割任务的新型损失函数,特别适用于高度类别不平衡的细粒度分割场景。与传统的区域型损失(如Dice、交叉熵)不同,它通过计算预测边界与真实边界之间的距离来优化模型,更关注边界精度而非区域重叠。核心思想是利用距离图(distance map)将边界约束转化为区域积分形式,实现端到端训练。具体实现中,损失函数为预测概率与距离图的点积,梯度仅取决于距离图,具有明确的空间引导性。相比区域型损失,Boundary Loss能更好处理小目标、细长结构等边界敏感任务,可与Dic

悦学共鸣,温柔以待,汇聚光芒,共同成长 239

利用pytorch长短期记忆网络LSTM实现股票预测分析

长短时记忆网络(Long Short Term Memory Network, LSTM),是一种改进之后的循环神经网络,可以解决RNN无法处理长距离的依赖的问题,目前比较流行。LSTM主要就是加入了三个门控:第一个开关遗忘门:负责控制继续保存长期状态c;第二个开关输入门:负责控制把即时状态输入到长期状态c;第三个开关输出门:负责控制是否把长期状态c作为当前的LSTM的输出。

优快云 精品推荐 1万+

C#开发学习笔记:ImageComboBoxEdit使用方法

1.下拉选项绑定图片 1.1.在ImageComboBoxEdit控件的Properties属性中的Items属性中添加下拉选项 注:Value值必须有值,否则下拉时会永远选中最后一项 1.2.为ImageComboBoxEdit控件添加图片集合,并将图片集合的索引与Item项的ImageIndex属性关联 Dictionary<string, int> dic =...

JustWantToFly的博客 3871

Unity-Mirror网络框架-从入门到精通之Mirror简介

在现代游戏开发中,网络功能日益成为提升游戏体验的关键组成部分。Mirror是一个用于Unity的开源网络框架,专为多人游戏开发设计。它使得开发者能够轻松实现网络连接、数据同步和游戏状态管理。本文将深入介绍Mirror的基本概念、如何与其他网络框架进行比较,以及如何从零开始创建一个使用Mirror的简单网络项目。Mirror是一个功能强大的Lite网络框架,旨在替代Unity的UNet网络解决方案。它提供了高效的多玩家架构、简单易用的API,以及良好的社区支持。

TxNet 3087

C#图片与流互转

在数据传输中有可能要用到传输图片,传输图片其实只要把图片转换为流就行了,那么在C#里面怎么转呢? 图片转流需要用到MemoryStream 这个类,位于using system.io下面,它提供了图片与内存流的相互转换。 图片转流 MemoryStream ms = new MemoryStream(); bitmap.Save(ms,System.Drawing.Imaging.ImageFormat.Bmp); byte[] buffer= new byte[ms.Length]; buffe

我思故我在-笛卡尔 3816

AI摄影师:自动构图与修图算法设计

AI摄影师:自动构图与修图算法设计​ ,人工智能,计算机视觉,大模型,AI,AI 摄影师的核心能力体现在两方面:自动构图(通过算法优化画面元素布局)与智能修图(自动调整光影、色彩、细节)。例如,手机摄影中的 “AI 构图建议” 功能可实时框选最佳拍摄区域,修图软件中的 “一键增强” 能在 0.1 秒内完成专业级调色,这些都依赖于计算机视觉与深度学习的深度融合。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 16万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

C#图片转成流,流转成图片,字节转图片,图片转字节的方法

图片转成流 Bitmap b = new Bitmap(Server.MapPath(ppath)); Stream ms = new MemoryStream(); b.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); 流转成图片 MemoryStream ms = new MemoryStream(Bytes); return Bi...

zxf347085420的博客 3022

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

C# 将字节流转换为图片的实例方法

/// <summary> /// 图片转换成字节流 /// </summary> /// <param name="img">要转换的Image对象</param> /// <returns>转换后返回的字节流</returns> ...

Small_bottle_cap的专栏 975

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Unity C#图片转换二进制流、精灵与Png、jpg互转

Unity C#图片转换二进制流、字 图片转二进制流转换图片互转 Png To Sprite —— Png 转 Sprite Sprite To Png —— Sprite 转 Png 至于生成到哪里Load Picture To Create —— 加载图片并创建 使用场景:将软件中的图片保存。将指定的UI 精灵图保存到本地 使用场景:将外部Png图片,显示在软件中。设置个头像、设置背景之类的自定义设置功能 Chinar 的初衷是将一种简单的生活方式带给世人

Chinar优快云的博客 1万+

C# 图片image与字节数组byte[]的互转

通常我们把图片保存到数据库时是以二进制数据(byte[],字节数组 )保存的。

Pei_hua100的专栏 1129

C# 读取本地图片及image与byte互转

读取本地文件转bitmap /// <summary> /// 通过FileStream 来打开文件,这样就可以实现不锁定Image文件,到时可以让多用户同时访问Image文件 /// </summary> /// <param name="path"></param> /// <returns></returns> public static Bit.

oneofironlady的博客 8697
上一篇: C#开发学习笔记:ImageComboBoxEdit使用方法
下一篇: Python开发学习笔记:Python GUI编程(Tkinter)
JustWantToFly
博客等级 码龄10年 42粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值