我正在编写一个与串行设备通信的应用程序,我需要在写入串口的字符串中发送字符串字段的长度。
例如"\x00\x27"
将是27个字节,如果我在字符串中发送它,它就可以工作,因为所有内容都是硬编码的,所以我知道它的长度。
另一个例子是"\x01\x27"
将是127个字节。
问题是我需要能够发送可变长度的字符串字段。我知道我可以使用
获得长度 int lninbyte = System.Text.ASCIIEncoding.ASCII.GetByteCount(data);
但如何将lninbyte
转换为"\x00\x27"
?
private void GetBCDDataLength(string data)
{
int lninbyte = System.Text.ASCIIEncoding.ASCII.GetByteCount(data);
if (lninbyte > 99)
{
}
else
{
BCDlenData = "\x00" + lninbyte.ToString("X");
}
}