上位机开发必备的一个实体类
-Begin-
上位机开发过程中,当自己编写通信类库的时候,包含ModbusRTU协议、ModbusTCP协议、各种PLC协议或其他自定义协议,都会涉及到报文的拼接;另外,如果大家做过一些配方管理的项目,也会遇到一些将各种数据类型转换成字节数组,然后进行拼接之后,统一发送给控制器的情况。对于这些情况,咱们常用的处理方式如下:
一、通过创建字节数组,然后依次通过索引给每个字节赋值:
二、通过创建List<byte>字节集合,然后通过添加的方式。
在这里我们对第二种方式做了一下封装,形成一个实体类,提供添加单个字节,添加多个字节,清除等接口,便于直接使用。
下面介绍一个关于这个ByteArray类的使用,同样是实现上述的功能,编写方式修改如下:
虽然仅仅只是对List<byte>做了一层封装,但是使用起来会方便很多。
大家可以看到,代码的可读性增强了很多,也变得更加简洁,而且这种方式非常通用,所有的报文拼接都可以使用这种方式。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构