C#中如何将字符串改成十六进制 然后改成十进制
时间: 2023-10-12 16:04:44 浏览: 179
C#十六进制字符串转十进制int的方法
3星 · 编辑精心推荐
在C#中,可以使用以下两种方法将字符串转换为十六进制:
1. 使用ToString方法:
```
string str = "Hello World";
byte[] bytes = Encoding.Default.GetBytes(str);
string hexString = BitConverter.ToString(bytes).Replace("-", "");
```
这里,我们首先将字符串转换为字节数组,然后使用BitConverter.ToString方法将其转换为十六进制字符串。最后,我们使用Replace方法去掉字符串中的“-”符号。
2. 使用StringBuilder类:
```
string str = "Hello World";
StringBuilder sb = new StringBuilder();
foreach (char c in str)
{
sb.Append(((int)c).ToString("X"));
}
string hexString = sb.ToString();
```
这里,我们使用StringBuilder类逐个字符地将字符串转换为十六进制字符串。使用((int)c).ToString("X")可以将字符转换为十六进制字符串。
接下来,我们将十六进制字符串转换为十进制数,可以使用以下方法:
```
string hexString = "48656C6C6F20576F726C64";
int decNum = int.Parse(hexString, System.Globalization.NumberStyles.HexNumber);
```
这里,我们使用int.Parse方法将十六进制字符串转换为十进制数。第二个参数System.Globalization.NumberStyles.HexNumber指定输入字符串为十六进制格式。
阅读全文