字符串到字节转换

时间:2012-03-16 08:41:36

标签: c#

  

可能重复:
  C# - Covert String of Hex values to Hex

我想从str =“0x04”转换为byte cmd = 0x04; 我怎么能用c sharp做到这一点? 我想要的是转换字符串值并将其写入COM端口,如下所示:

byte[] val;
val = new byte[16];
byte[] res4 = System.Text.Encoding.Default.GetBytes(str4);
val[0] = 0xFF;
val[1] = 0xFF;
...
val[15] = 0x01;
port.Write(val, 0, 16);

提前致谢!

3 个答案:

答案 0 :(得分:2)

要从类似的字符串中获取字节值,您可以使用:

byte b = Byte.Parse(str.Remove(0,2), NumberStyles.HexNumber);

基本上你需要删除字符串的0x部分,然后指定你正在解析一个十六进制值

答案 1 :(得分:0)

试试这个:

int num = System.Convert.ToInt32(str4, 16);
byte[] val = BitConverter.GetBytes(num);

答案 2 :(得分:0)

使用Int32.Parse()将字符串解析为十六进制数。如果字符串由多个命令组成,则必须使用String.Split()将其拆分。