主要作用:清除发送字符串转字节中的空格和16进制前缀0x,

字节转换按两位字符转换为一个字节,多余一位按一位字符转换一个字节

//清除空格和16进制前缀发送
String sendstr;// = new String [textBox1.Text.Length]
sendstr = textBox1.Text;

//这里采用substring较麻烦,不能使用split,因为sendstr为隐形string[],应该还可以用remove(未尝试过)

//清除发送字符串转字节中的空格和16进制前缀0x
sendstr = sendstr.Replace(" ", "");
sendstr = sendstr.Replace("0x", "");
byte[] Data = new byte[1];
try
{
if (serialPort1.IsOpen)
{
if (textBox1.Text != "")
{

//字节转换按两位字符转换为一个字节,多余一位按一位字符转换一个字节
for (int i = 0; i < (sendstr.Length - sendstr.Length % 2) / 2; i++)
{
Data[0] = Convert.ToByte(sendstr.Substring(i * 2, 2), 16);
serialPort1.Write(Data, 0, 1);
}
if (sendstr.Length % 2 != 0)
{
Data[0] = Convert.ToByte(sendstr.Substring(sendstr.Length - 1, 1), 16);
serialPort1.Write(Data, 0, 1);
}
}
else
{
MessageBox.Show("发送区未输入数据", "数据输入提示");
}
//serialPort1.Write(recivebyte, 0, recivebyte.Length);
}
else
{
MessageBox.Show("串口未打开", "串口未打开提示");
}
}
catch
{
MessageBox.Show("发送出错", "错误提示");
serialPort1.Close();
}

C#发送字符串转字节含空格与0x需删去的更多相关文章

  1. Android:手把手教你 实现Activity 与 Fragment 相互通信,发送字符串信息(含Demo)

    前言Activity 与 Fragment 的使用在Android开发中非常多今天,我将主要讲解 Activity 与 Fragment 如何进行通信,实际上是要解决两个问题: Activity 如何 ...

  2. C# 16进制与字符串、字节数组之间的转换(转)

    1.请问c#中如何将十进制数的字符串转化成十六进制数的字符串   //十进制转二进制 Console.WriteLine("十进制166的二进制表示: "+Convert.ToSt ...

  3. 如何去掉C#字符串中的所有空格(转载)

    如何去掉C#字符串中的所有空格 来源:https://www.cnblogs.com/donchen/p/8966059.html 字符串行数Trim()可以去掉字符串前后的空格,如:  C# Cod ...

  4. C# 16进制与字符串、字节数组之间的转换 (转载)

    1.请问c#中如何将十进制数的字符串转化成十六进制数的字符串 //十进制转二进制 Console.WriteLine(, )); //十进制转八进制 Console.WriteLine(, )); / ...

  5. js计算字符串的字节数和字符串与二进制的相互转化

    一.js计算字符串的字节数方法: //blob获取字符串的字节 var debug = "好的"; var blob = new Blob([debug],{type : 'tex ...

  6. C#串口通讯,16进制与字符串、字节数组之间的转换。

    1.将十进制数的字符串转化成十六进制数的字符串 //十进制转二进制Console.WriteLine("十进制166的二进制表示: "+Convert.ToString(166, ...

  7. C# 16进制与字符串、字节数组之间的转换

    1.请问c#中如何将十进制数的字符串转化成十六进制数的字符串//十进制转二进制 Console.WriteLine("十进制166的二进制表示: "+Convert.ToStrin ...

  8. delphi消息发送字符串

    delphi消息发送字符串 其实不论什么方法,归根揭底都是通过传递对象的指针来达到效果的. 方法一: procedure SendString(strMSG: string);var  Data: t ...

  9. C# 16进制与字符串、字节数组之间的转换(串口通讯中)

    1.c#中如何将十进制数的字符串转化成十六进制数的字符串//十进制转二进制 Console.WriteLine("十进制166的二进制表示: "+Convert.ToString( ...

  10. C# 整形、双精度浮点型、字符串与字节型的相互转化

    整形.双精度浮点型.字符串与字节型的相互转化,如下 using System; using System.Collections.Generic; using System.Linq; using S ...

随机推荐

  1. C++11 变长参数模板 & 如何展开变长参数

    https://blog.csdn.net/CodeBowl/article/details/119902935 通过typename ... Args指定变长参数. 通常通过递归展开各个参数, 使用 ...

  2. 官网jdk8,jdk11下载时需要登录Oracle账号的问题解决

    当到这一步骤时先勾选同意,在这个下载按钮上点鼠标右键复制链接地址 文件的下载地址 我们需要把地址做些修改.把等号前面的地址删掉,然后找到等号后面地址中的otn后面加上-pub 然后把这个地址直接复制到 ...

  3. Attention:何为注意力机制?

    ​  本文来自公众号"AI大道理" 人类利用有限的注意力资源从大量信息中快速筛选出高价值信息,这是人类在长期进化中形成的一种生存机制,人类视觉注意力机制极大地提高了视觉信息处理的效 ...

  4. centos7.2下配置dhcp v4或v6服务

    1.centos7.2下配置dhcp v4或v6服务 安装dhcp-server centos7及以前版本的操作系统使用命令: yum install dhcp centos8使用命令: yum in ...

  5. abap screen表格控件后续增加栏位

    当我们通过screen的表控件(含向导)创建完表格之后,后续想再增加栏位,要先把输入控件拖入表格控件内,再按钮控控件拖进去即可. 注:输入控件的名称和格式要和程序中的一致,否则会显示不出数据 效果图如 ...

  6. 5-6:实现多窗口之异常(AttributeError: 'list' object has no attribute 'click')

    代码: #coding = utf-8 from selenium import webdriver import time ##############5-6:实现多窗口切换_start###### ...

  7. 跨时钟域之异步FIFO

    参考:https://www.cnblogs.com/aslmer/p/6114216.html 文章:Simulation and Synthesis Techniques for Asynchro ...

  8. mybatis -plus基础

  9. JDK、JRE、JVM和i++

    JRE:运行环境(包含JVM和JAVA核心类库) JDK:JAVA开发工具包(包含JRE和开发工具)----开发工具:指编译工具javac和运行工具java JVM:虚拟机,保证了跨平台 ++i:先运 ...

  10. Oracle dump文件的一些经验

    dump文件对于DBA而言再平常不过了.不过因为dump文件是二进制文件,我们平时使用中不太关注.再导入dump文件时有很多细节和技巧是值得注意的. 1.查看dump文件的一些基本信息 strings ...