Как получить значение ASCII строки в C#

Примечание: использование неопределенной константы XXX - предполагается, что «XXX»

, или в PHP 7.2 или новее:

Предупреждение: использование неопределенной константы XXX - предполагаемый «XXX» ( это вызовет ошибку в будущей версии PHP)

Это уведомление возникает, когда токен используется в коде и представляется константой, но константа с этим именем не определена.

Одной из наиболее распространенных причин этого уведомления является отказ от цитирования строки, используемой в качестве ассоциативного массива.

Например:

// Wrong
echo $array[key];

// Right
echo $array['key'];

Другие распространенные причины отсутствует значок $ (доллар) перед именем переменной:

// Wrong
echo varName;

// Right
echo $varName;

Или, может быть, у вас есть некорректная другая константа или ключевое слово:

// Wrong
$foo = fasle;

// Right
$foo = false;

Он также может быть признаком того, что необходимое расширение или библиотека PHP отсутствует при попытке доступа к константе, определенной этой библиотекой.

Вопросы, относящиеся:

97
задан Peter Mortensen 17 July 2014 в 15:51
поделиться

6 ответов

От MSDN

string value = "9quali52ty3";

// Convert the string into a byte[].
byte[] asciiBytes = Encoding.ASCII.GetBytes(value);

у Вас теперь есть массив значения ASCII байтов. Я получил следующее:

57 113 117 97 108 105 53 50 116 121 51

183
ответ дан 24 November 2019 в 05:22
поделиться

Если Вы хотите charcode для каждого символа в строке, Вы могли бы сделать что-то вроде этого:

char[] chars = "9quali52ty3".ToCharArray();
2
ответ дан Peter Mortensen 24 November 2019 в 05:22
поделиться

Вы подразумеваете, что только хотите буквенные символы а не цифры? Таким образом, Вы хотите "качество" в результате? Можно использовать Символ. IsLetter или Символ. IsDigit для фильтрования их один за другим.

string s = "9quali52ty3";
StringBuilder result = new StringBuilder();
foreach(char c in s)
{
  if (Char.IsLetter(c))  
    result.Add(c);
}
Console.WriteLine(result);  // quality
6
ответ дан Lars Truijens 24 November 2019 в 05:22
поделиться
string text = "ABCD";
for (int i = 0; i < text.Length; i++)
{
  Console.WriteLine(text[i] + " => " + Char.ConvertToUtf32(text, i));
}

, Если я помню правильно, значение ASCII является числом более низких семи битов число Unicode .

2
ответ дан Peter Mortensen 24 November 2019 в 05:22
поделиться

Это должно работать:

string s = "9quali52ty3";
byte[] ASCIIValues = Encoding.ASCII.GetBytes(s);
foreach(byte b in ASCIIValues) {
    Console.WriteLine(b);
}
21
ответ дан jason 24 November 2019 в 05:22
поделиться
string s = "9quali52ty3";
foreach(char c in s)
{
  Console.WriteLine((int)c);
}
32
ответ дан LeppyR64 24 November 2019 в 05:22
поделиться
Другие вопросы по тегам:

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