public string HexStringToASCII(string hexstring)
{
byte[] bt = strToToHexByte(hexstring);
string lin = "";
for (int i = 0; i < bt.Length; i++)
{
lin = lin + bt[i] + " ";
}
string[] ss = lin.Trim().Split(new char[] { ' ' });
char[] c = new char[ss.Length];
int a;
for (int i = 0; i < c.Length; i++)
{
a = Convert.ToInt32(ss[i]);
c[i] = Convert.ToChar(a);
}
string b = new string(c);
return b;
}
public byte[] strToToHexByte(String hexString)
{
hexString = hexString.Replace(" ", "");
if ((hexString.Length % 2) != 0)
hexString += " ";
byte[] returnBytes = new byte[hexString.Length / 2];
for (int i = 0; i < returnBytes.Length; i++)
returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2).Trim(), 16); return returnBytes;
}
方便自己使用,记录一下
本文分享了一段C#代码,用于将十六进制字符串转换为ASCII字符串。代码包括两个主要函数:HexStringToASCII和strToToHexByte,分别负责转换过程的不同阶段。HexStringToASCII函数接收一个十六进制字符串,通过strToToHexByte将其转换为字节数组,然后逐个字符转换为ASCII码并拼接成新的字符串。
2641





