将十六进制转换为十进制

时间:2014-05-06 00:43:10

标签: c#

我有一个十六进制格式的字符串数组,例如{"3d", "20", "5a"}

将此字符串的每个元素转换为十进制格式的好方法是什么?

我尝试使用GetBytes(),但这似乎不起作用,因为它将“3d”视为两个不同的字符,因为它不知道它是十六进制格式。

GetBytes()在下面的情况下工作正常但如果字符是十六进制则不行。

我在这里缺少什么?

string a = "T";
byte[] b = {10};
b = System.Text.UTF8Encoding.Default.GetBytes(a);

2 个答案:

答案 0 :(得分:4)

int.Parse与NumberStyles.HexNumber一起使用。

答案 1 :(得分:1)

int decValue = int.Parse(hexValue,System.Globalization.NumberStyles.HexNumber);

试试吧。 HexValue是十六进制格式的数字,decValue是十进制格式......