Hey all I am getting the following error when running this code:
byte[] bytes = new[] {
Convert.ToByte("&H" + Conversion.Hex(127)),
Convert.ToByte("&H" + Conversion.Hex(7)),
Convert.ToByte("&H" + Conversion.Hex(170)),
Convert.ToByte("&H" + Conversion.Hex(218)),
Convert.ToByte("&H" + Conversion.Hex(228)),
Convert.ToByte("&H" + Conversion.Hex(50)),
Convert.ToByte("&H" + Conversion.Hex(1)),
Convert.ToByte("&H" + Conversion.Hex(155)),
Convert.ToByte("&H" + Conversion.Hex(171)),
Convert.ToByte("&H" + Conversion.Hex(232)),
Convert.ToByte("&H" + Conversion.Hex(127))
};
The error is:
Input string was not in a correct format.
Originally the code above is from a VB.net to C# translation. The original Vb.net code looked like this:
Dim bytes() As Byte = {"&H" & Hex(127), "&H" & Hex(7), "&H" & Hex(170),
"&H" & Hex(218), "&H" & Hex(228), "&H" & Hex(50),
"&H" & Hex(1), "&H" & Hex(155), "&H" & Hex(171),
"&H" & Hex(232), "&H" & Hex(127)}
What do I need to do in order to get this working in C#?
Conversion.Hex
-> string concatenation ->Convert.ToByte
method when the literals are right there...?byte[] bytes = new[] { 127, ... }
, like in @Xavier J's answer. Note that0x127
is not the same as decimal127
(0x7F
).