gpt4 book ai didi

C# 十六进制到 ascii

转载 作者:IT王子 更新时间:2023-10-29 04:52:26 25 4
gpt4 key购买 nike

我正在尝试将一个十六进制字符串转换为 ASCII,使用这个:

public void ConvertHex(String hexString)
{
StringBuilder sb = new StringBuilder();

for (int i = 0; i < hexString.Length; i += 2)
{
String hs = hexString.Substring(i, i + 2);
System.Convert.ToChar(System.Convert.ToUInt32(hexString.Substring(0, 2), 16)).ToString();
}
String ascii = sb.ToString();
MessageBox.Show(ascii);
}

但我得到了一个出界或边界异常,我确信这是一个明显的错误,但我尝试过的其他代码也不起作用。我做错了什么?

最佳答案

此代码会将十六进制字符串转换为 ASCII,您可以将其复制粘贴到类中并在不实例化的情况下使用它

public static string ConvertHex(String hexString)
{
try
{
string ascii = string.Empty;

for (int i = 0; i < hexString.Length; i += 2)
{
String hs = string.Empty;

hs = hexString.Substring(i,2);
uint decval = System.Convert.ToUInt32(hs, 16);
char character = System.Convert.ToChar(decval);
ascii += character;

}

return ascii;
}
catch (Exception ex) { Console.WriteLine(ex.Message); }

return string.Empty;
}

注意事项

2 = 编号。用于表示 ASCII 字符的 hexString 字符数。

System.Convert.ToUInt32(hs, 16) = “将 base 16 十六进制子字符串转换为无符号 32 位 int”

关于C# 十六进制到 ascii,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5613279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com