如何将包含十六进制对的字符串转换为字节?

时间:2011-02-13 17:40:03

标签: c# string byte hex

我有一个包含十六进制值的字符串。现在我需要包含十六进制的字符串的内容作为字节变量。如何在不更改十六进制值的情况下执行此操作?

3 个答案:

答案 0 :(得分:6)

到目前为止发布的选项的alternative

byte b = Convert.ToByte(text, 16);

请注意,如果text为空,则返回0;这可能是您想要的结果,也可能不是。

答案 1 :(得分:2)

String strHex = "ABCDEF";
Int32 nHex = Int32.Parse(strHex, NumberStyles.HexNumber);
Byte[] bHex = BitConverter.GetBytes(nHex);

我认为这就是你要找的东西。如果没有,请发布更新,更明确地定义您要查找的内容。

答案 2 :(得分:1)

如果它只是字符串中的单个字节,则可以执行以下操作:

        string s = "FF";
        byte b;


        if (byte.TryParse(s, NumberStyles.HexNumber, null, out b))
        {
            MessageBox.Show(b.ToString());  //255
        }