Я пытаюсь преобразовать шестнадцатеричную строку в ASCII в c #, используя Visual Studio Community 2017.
Моя шестнадцатеричная строка выглядит следующим образом
070196000008220031CE4745542073776964FD48
когда я конвертирую его в ASCII, он выглядит так, как показано ниже
Моя путаница заключается в том, почему он показывает ASCII "\ a" для гекса "07" ?? так должно быть . Значение ASCII для гекса "01" должно быть, но оно показывает "\ u0001". То же самое для управляющих символов ASCII и расширенных символов ASCII.
Может кто-нибудь объяснить, пожалуйста! Я что-то упустил и как это сделать.
Код, который я использую для преобразования hextoascii
public string ConvertHextoASCII(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);
int decval = System.Convert.ToInt32(hs, 16);
char character = System.Convert.ToChar(decval);
ascii += character;
}
return ascii;
}
catch (Exception ex) { Console.WriteLine(ex.Message); }
return string.Empty;
}
Заранее спасибо.