gpt4 book ai didi

c# - 将字符串变量写入字节数组的一个字节,例如bytes [6] =“c6”

转载 作者:太空宇宙 更新时间:2023-11-03 18:03:42 24 4
gpt4 key购买 nike

我想知道如何将一些字符串写入字节数组的一个字节(在MS Visual 2015 Community Edition中运行C#WinForms)。

我有一个控制步进电机的控制板。为了通过SerialPort向电机发送命令,开发板需要一个长度为9的字节数组。

在数组的每个字节中都有一个存储的信息(如板地址,电机编号等)。此数组中的最后3个字节用于速度。从生产者附带的程序的源代码中,有时我需要发送的信息如下:“ b0”,“ bc”,“ a7”等。如何将其写入所需的数组中地点。目前,我有这样的:

private void button3_Click(object sender, EventArgs e)
{
byte[] a = new byte[9];
a[0] = 1;
a[1] = 1;
a[2] = 0;
a[3] = 0;
a[4] = 0;
a[5] = 0;
a[6] = 02; //could also be like "bc"
a[7] = Convert.ToByte("bc"); // if its a number from 00 to
a[8] = Convert.ToByte("c0"); // 99 the motor works as planned

serialPort1.Write(a, 0, a.Length);
}


如果字节6-9中的数字为0到99,那么电动机将按预期运行。但是更高的速度具有字符串值。为什么变量看起来像它们的样子,我稍后会弄清楚,但是根据我的计划,现在手动输入就可以了,因为电机应该只能以一种速度运行。

到目前为止,我的完整代码确实可以编译,但是发送后得到:


  FormatExceptionError {“输入字符串格式错误。”}


我发现了有关如何将完整的字符串转换为完整的字节数组的问题,但这些问题并没有真正帮助我。

最佳答案

这些不是字符串值。它们是每个字节的hexadecimal表示。使用0x作为前缀表示十六进制值。

a[7] = 0xBC;
a[8] = 0xC0;

关于c# - 将字符串变量写入字节数组的一个字节,例如bytes [6] =“c6”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40971396/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com