大家好我想从ascii代码转换为普通代码 因为我做了一个方法,从普通代码转换为ascii代码,我想逆转它 这是我转换为ascii的方法
public string CreatSerial()
{
string serial = "";
string P1, P2 = "";
string Befor_Serial = GetDeviceSerial().Trim() + 5;
P1 = Befor_Serial.Substring(0, Befor_Serial.Length / 2);
P2 = Befor_Serial.Substring(Befor_Serial.Length / 2);
Befor_Serial = P2 + "ICS" + P1;
char[] strarr = Befor_Serial.ToCharArray();
Array.Reverse(strarr);
serial = new string(strarr);
byte[] asciiBytes = Encoding.ASCII.GetBytes(serial);
serial = "";
foreach (byte b in asciiBytes)
{
serial += b.ToString();
}
return serial;
}
答案 0 :(得分:0)
您正在创建的字符串是不可逆转的。 从MSDN
查看此示例byte[] bytes = {0, 1, 14, 168, 255};
foreach (byte byteValue in bytes)
Console.WriteLine(byteValue.ToString());
// The example displays the following output to the console if the current
// culture is en-US:
// 0
// 1
// 14
// 168
// 255
如果您将这些数字放在一起,您将获得0114168255
。你无法从中获取字节数。你可以做的是改用Byte.ToString("x")
。它将生成基础字节值的十六进制表示。它总是长度为2。