Должен преобразовать строку/символ в значения ASCII

Я должен преобразовать символ для преобразовывания значений в шестнадцатеричную систему. Обратитесь к таблице Ascii, но у меня есть несколько упомянутых ниже примеров:

  • символ 1 = 31 2 = 32 3 = 33 4 = 34 5 = 35 А = 41 = 61 и т.д.

Поэтому представьте ул. в виде строки = "12345"; Потребность получить преобразованную ул. = "3132333435"

6
задан SA. 24 April 2010 в 02:30
поделиться

3 ответа

Чтобы получить его в одну строку и сделать его более читабельным (imo)

var result = "12345".Aggregate("", (res, c) => res + ((byte)c).ToString("X"));

, это возвращает «3132333435» , как вы и просили :)

1
ответ дан 8 December 2019 в 17:19
поделиться
string.Join("", from c in "12345" select ((int)c).ToString("X"));
3
ответ дан 8 December 2019 в 17:19
поделиться

Думаю, это все, что вам понадобится:

string finalValue;
byte[] ascii = Encoding.ASCII.GetBytes(yourString);
foreach (Byte b in ascii) 
{
  finalValue += b.ToString("X");
}

Дополнительная информация на MSDN: http://msdn.microsoft.com/en-us/library/system.text.encoding.ascii.aspx

Редактировать: В шестнадцатеричный:

string finalValue;
int value;
foreach (char c in myString)
{
  value = Convert.ToInt32(c);
  finalValue += value.ToString("X"); 
  // or finalValue = String.Format("{0}{1:X}", finalValue, value);
}
// use finalValue
8
ответ дан 8 December 2019 в 17:19
поделиться
Другие вопросы по тегам:

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