C#十六进制处理难题
1、目的:
通过PC向一个控制设备发送16进制命令,例如1F0A。该十六进制命令不能以字符串的形式发出,即不能是string变量,只能是byte[]数组。
需要调用的命令发送函数的形式为:send(byte[] command),参数command即为要发送的命令
2、可行的方法之一:
该方法我已通过调试,证明是可行的。方法如下:
定义数组byte[] b1 = {0x1F,0x0A},然后将b1作为发送函数的参数即可,即send(b1)
3、问题:
虽然上述方法可行,但应用中操作起来比较麻烦,比如当要把两个定义好的数组组合来发送,例如
byte[] b1 = {0x1F,0x0A};
byte[] b2 = {0x1B};
现在要发送命令1f=F0A1B,就需要组合数组b1和b2,方法是用数组的CopyTo方法:
byte[] b3 = new byte[3];
b1.CopyTo(b3,0);
b2.CopyTo(b3,2);
这样b3={0x1F,0x0A,0x1B};
如果能把命令用字符串来保存,则操作起来很方便,如string s1 = "1F0A",但如何将字符串转为十六进制数值来发送呢?这个转换问题我一直没能解决,找了很多转换方法,最后结果都是将转换得到的十六进制作为文本字符串来输出而已,而不是得到十六进制数值,并将其放到byte[]数组中。
希望得到各位同行的帮助。
相关推荐
基于TypeScript和HTML的体育赛事报名系统设计源码
该项目为体育赛事报名系统,采用TypeScript和HTML技术栈构建,共计包含252个文件。文件类型多样,包括89个TypeScript文件、41个PNG图片、34个SVG图片、30个JSON5配置文件、27个JSON文件、8个Git忽略文件、8个TypeScript源文件、7个文本文件、2个JPG图片以及2个HTML文件。系统旨在提供便捷的体育赛事报名体验,适用于各类体育活动组织与管理工作。
C++ STL六大组件-简介
STL(Standard Template Library),即标准模板库,是一个高效的C++程序库。包含了诸多在计算机科学领域里常用的基本数据结构和基本算法。从逻辑层次来看,在STL中体现了泛型化程序设计的思想(generic programming)。从实现层次看,整个STL是以一种类型参数化(type parameterized)的方式实现的。 STL的六大组件如下: Container(容器) Adapter(适配器) Algorithm(算法) Iterator(迭代器) Fu...
基于TypeScript和HTML的前端水产管理系统设计源码
该项目是一款基于TypeScript和HTML开发的水产管理系统前端源码,共包含101个文件,涵盖42个TypeScript文件、37个Tsx文件、6个SCSS文件、4个JSON文件、2个CommonJS文件,以及配置和忽略文件等,旨在提供高效的水产管理解决方案。
基于TypeScript、Vue、CSS、HTML的日记系统设计源码
该项目为基于TypeScript、Vue、CSS、HTML构建的日记系统设计源码,总计包含46个文件,涵盖18个TypeScript文件、11个Vue组件文件、7个JSON配置文件、3个PNG图片文件、3个CSS样式文件、1个CommonJS模块文件、1个Markdown文档、1个HTML页面、1个图标文件。该系统旨在提供便捷的日记记录功能,适用于个人或团队日常记录和回顾。
基于JavaScript/TypeScript/HTML/CSS的门票系统设计源码
该项目是一款综合运用JavaScript、TypeScript、HTML和CSS技术开发的门票系统源码,总计包含809个文件,涵盖358个JavaScript文件、175个Markdown文件、117个JSON文件、18个TypeScript文件、10个YAML文件、7个NPM忽略文件、4个映射文件、3个PNG图片文件、3个ESLint配置文件和2个CSS文件。该系统旨在提供高效的门票管理解决方案。


