Вопрос по c#, ascii – Преобразование строки ASCII в обычную строку C # [duplicate]

2

Possible Duplicate:
.NET Convert from string of Hex values into Unicode characters (Support different code pages)

Глядя, чтобы преобразовать строку, содержащую строку ASCII, в текст, я, похоже, смогу найти только System.Text.ASCIIEncoding.ASCII.GetString, который преобразует из Byte [], но в этом случае я хотел бы иметь возможность сделать это из строки

its a string containing ASCII hex: For example : ASCI = 47726168616D would equal Graham

Есть ли встроенные функции для этого? помощь будет оценена, спасибо.

Что такое нормальная строка в C #? mloskot
Ваш код пожалуйста Nikhil Agrawal
@Graham Попробуйте преобразовать строку в байт [], а затем примените System.Text.ASCIIEncoding.ASCII.GetString Milee
Что именно вы подразумеваете подASCII string? Пожалуйста, приведите пример. Вы можете использовать & quot; редактировать & quot; ссылка под вашим ответом, чтобы расширить ваш вопрос. Heinzi
В C # нет строки ASCII, все они Unicode. Итак, откуда эта строка? user694833

Ваш Ответ

1   ответ
6
private static string GetStringFromAsciiHex(String input)
{
    if (input.Length % 2 != 0)
        throw new ArgumentException("input");

    byte[] bytes = new byte[input.Length / 2];

    for (int i = 0; i < input.Length; i += 2)
    {
        // Split the string into two-bytes strings which represent a hexadecimal value, and convert each value to a byte
        String hex = input.Substring(i, 2);
        bytes[i/2] = Convert.ToByte(hex, 16);                
    }

    return System.Text.ASCIIEncoding.ASCII.GetString(bytes);
}

Похожие вопросы