【发布时间】:2016-02-13 14:00:49
【问题描述】:
我想将int转换成hex字符串(这部分没问题)然后将hex字符串转换成byte格式@987654326 @ 以便在数组中使用它。目前我有那个代码:
// Calculate the int that will be convert to Hex string
int totalLenght=11+request.Length;
// Try to convert it into byte
byte totalLenghtByte=Convert.ToByte( totalLenght.ToString("X"));
// put it into an array of bytes
xbeeFrame[2] =(totalLenghtByte);
例如,int 值是 18,因此十六进制字符串是 1D(太棒了!)。但问题是我不知道我是否必须做其他事情才能获得 0x1D 字节......
感谢您的帮助!
【问题讨论】:
-
1D不是18。它的29因为D是13。18 也是12 -
您确定这是您真正需要的吗?
totalLenghtByte是byte,这是数字数据类型,您正在尝试将字符串存储在那里。 -
是的,我想。我用它来创建一个 xbee 框架。在 xbee 帧中,第 3 个字节是请求的长度字节。所以我用第一行计算总长度,然后将其转换为十六进制(长度 = 18 -> 1D),最后我试图将此十六进制字符串转换为字节值(十六进制:1D ->字节:0x1D)
-
@M.kazemAkhgary 是的,对不起我的错误。这是因为我将 11 添加到我的长度值(在我的示例中为 18)-> 11+18 = 29 -> 1D :)