Преобразование символа в его код ASCII в JavaScript
В этом посте мы обсудим, как преобразовать символ в его код ASCII в JavaScript.
Например, код ACSII ‘A’ 65, ‘0’ 48, ‘a’ 97 и т.д.
1. Использование String.charCodeAt() функция
The charCodeAt() метод возвращает UTF-16 единица кода по указанному индексу. Это возвращает целое число от 0 до 65535. Первые 128 кодовых точек Unicode (от 0 до 127) соответствуют набору символов ASCII.
В следующем примере возвращается значение Unicode для ‘A’ , то есть 65.
Как преобразовать символ в ASCII в Java
В Java преобразовать символ в ASCII довольно просто, он просто конвертирует символ в int.
Преобразовать символ в ASCII
int ascii = (int) character;
Конвертировать ASCII в символ
char character = (char)ascii;
Пример на Java
package com.csharpcoderr.common; /** * Character Utility class * @author mkyong * */ public class CharUtils < /** * Convert the characters to ASCII value * @param character character * @return ASCII value */ public static int CharToASCII(final char character)< return (int)character; >/** * Convert the ASCII value to character * @param ascii ascii value * @return character value */ public static char ASCIIToChar(final int ascii) < return (char)ascii; >>
Модульный тест
package com.csharpcoderr.common; import org.testng.Assert; import org.testng.annotations.*; /** * Character Utils Testing * @author mkyong * */ public class CharUtilsTest < @DataProvider public Object[][] ValidDataProvider() < return new Object[][]< < 'A', 65 >,< 'a', 97 >, < 'B', 66 >,< 'b', 98 >, < 'C', 67 >,< 'c', 99 >, < 'D', 68 >,< 'd', 100 >, < 'Z', 90 >,< 'z', 122 >, < '1', 49 >,< '9', 57 >, >; > @Test(dataProvider = "ValidDataProvider") public void CharToASCIITest(final char character, final int ascii) < int result = CharUtils.CharToASCII(character); Assert.assertEquals(result, ascii); >@Test(dataProvider = "ValidDataProvider") public void ASCIIToCharTest(final char character, final int ascii) < char result = CharUtils.ASCIIToChar(ascii); Assert.assertEquals(result, character); >>
Результат модульного теста
PASSED: CharToASCIITest(A, 65) PASSED: CharToASCIITest(a, 97) PASSED: CharToASCIITest(B, 66) PASSED: CharToASCIITest(b, 98) PASSED: CharToASCIITest(C, 67) PASSED: CharToASCIITest(c, 99) PASSED: CharToASCIITest(D, 68) PASSED: CharToASCIITest(d, 100) PASSED: CharToASCIITest(Z, 90) PASSED: CharToASCIITest(z, 122) PASSED: CharToASCIITest(1, 49) PASSED: CharToASCIITest(9, 57) PASSED: ASCIIToCharTest(A, 65) PASSED: ASCIIToCharTest(a, 97) PASSED: ASCIIToCharTest(B, 66) PASSED: ASCIIToCharTest(b, 98) PASSED: ASCIIToCharTest(C, 67) PASSED: ASCIIToCharTest(c, 99) PASSED: ASCIIToCharTest(D, 68) PASSED: ASCIIToCharTest(d, 100) PASSED: ASCIIToCharTest(Z, 90) PASSED: ASCIIToCharTest(z, 122) PASSED: ASCIIToCharTest(1, 49) PASSED: ASCIIToCharTest(9, 57) =============================================== com.csharpcoderr.common.CharUtilsTest Tests run: 24, Failures: 0, Skips: 0 =============================================== =============================================== mkyong Total tests run: 24, Failures: 0, Skips: 0 ===============================================
Ссылка
ЧИТАТЬ ТАКЖЕ: Как изменить расположение файла html в Wicket
Преобразование символа в ASCII в C++
В этом посте мы обсудим, как преобразовать char в код ASCII на C++.
Простое решение для преобразования char в код ASCII на C++ — использование приведения типов. Вот пример его использования:
int i = int ( c ) ;
std :: cout << i << std :: endl ; // 75
Кроме того, мы можем неявно преобразовать char в код ASCII, назначив char типу int. Это работает, поскольку char уже является числом.
std :: cout << i << std :: endl ; // 75
C++ также предлагает четыре типа литейщики – static_cast , dynamic_cast , reinterpret_cast , а также const_cast . Чтобы сделать преобразование безопасным и явным, рассмотрите возможность использования static_cast .
int i = static_cast < int >( c ) ;
std :: cout << i << std :: endl ; // 75
Это все о преобразовании char в код ASCII на C++.
Оценить этот пост
Средний рейтинг 4.09 /5. Подсчет голосов: 23
Голосов пока нет! Будьте первым, кто оценит этот пост.
Сожалеем, что этот пост не оказался для вас полезным!
Расскажите, как мы можем улучшить этот пост?
Спасибо за чтение.
Пожалуйста, используйте наш онлайн-компилятор размещать код в комментариях, используя C, C++, Java, Python, JavaScript, C#, PHP и многие другие популярные языки программирования.
Как мы? Порекомендуйте нас своим друзьям и помогите нам расти. Удачного кодирования 🙂
Подписывайся
0 Комментарии
Встроенные отзывы
Просмотреть все комментарии
Загрузить больше комментариев
Просматривать
Подпишитесь на новые публикации
- Все проблемы
- Практика DSA
- 100 самых популярных задач
- 50 лучших классических задач
- Лучшие алгоритмы
- Компилятор С/С++
- Компилятор Java
- Компилятор Python
- Компилятор JavaScript
- компилятор PHP
- Компилятор C#
- Свяжитесь с нами
- Политика конфиденциальности
- условия обслуживания
- Подпишитесь на новые публикации
Techie Delight © 2023 Все права защищены.
Этот веб-сайт использует файлы cookie. Используя этот сайт, вы соглашаетесь с использованием файлов cookie, нашей политикой, условиями авторского права и другими условиями. Читайте наши Политика конфиденциальности. Понятно
Как перевести в ascii
(PHP 4, PHP 5, PHP 7, PHP 8)
ord — Конвертирует первый байт строки в число от 0 до 255
Описание
ord ( string $character ): int
Интерпретирует бинарное значение первого байта строки character как беззнаковое целое.
Если строка создана в однобайтовой кодировке, такой как ASCII, ISO-8859 или Windows 1252, результат функции будет эквивалентен позиции символа в соответствующей таблице кодировки. В любом случае, эта функция ничего не знает про кодировки и не сможет вернуть кодовую точку первого символа строки, закодированной в многобайтовой кодировке, такой как UTF-8 или UTF-16.
Эта функция дополняет функцию chr() .
Список параметров
Возвращаемые значения
Целое число от 0 до 255.
Примеры
Пример #1 Пример использования ord()
$str = «\n» ;
if ( ord ( $str ) == 10 ) echo «Первый символ \$str — перевод строки.\n» ;
>
?>?php
Пример #2 Просмотр индивидуальный байтов строки UTF-8
declare( encoding = ‘UTF-8’ );
$str = «» ;
for ( $pos = 0 ; $pos < strlen ( $str ); $pos ++ ) $byte = substr ( $str , $pos );
echo ‘Байт ‘ . $pos . ‘ строки $str равен ‘ . ord ( $byte ) . PHP_EOL ;
>
?>?php
Результат выполнения данного примера:
Байт 0 строки $str равен 240
Байт 1 строки $str равен 159
Байт 2 строки $str равен 144
Байт 3 строки $str равен 152
Смотрите также
- chr() — Генерирует односимвольную строку по заданному числу
- » Таблица ASCII-кодов
- mb_ord() — Получает кодовую точку символа Unicode
- IntlChar::ord() — Получить код символ Unicode
User Contributed Notes 6 notes
11 years ago
As ord() doesn’t work with utf-8, and if you do not have access to mb_* functions, the following function will work well:
function ordutf8 ( $string , & $offset ) $code = ord ( substr ( $string , $offset , 1 ));
if ( $code >= 128 ) < //otherwise 0xxxxxxx
if ( $code < 224 ) $bytesnumber = 2 ; //110xxxxx
else if ( $code < 240 ) $bytesnumber = 3 ; //1110xxxx
else if ( $code < 248 ) $bytesnumber = 4 ; //11110xxx
$codetemp = $code — 192 — ( $bytesnumber > 2 ? 32 : 0 ) — ( $bytesnumber > 3 ? 16 : 0 );
for ( $i = 2 ; $i <= $bytesnumber ; $i ++) $offset ++;
$code2 = ord ( substr ( $string , $offset , 1 )) — 128 ; //10xxxxxx
$codetemp = $codetemp * 64 + $code2 ;
>
$code = $codetemp ;
>
$offset += 1 ;
if ( $offset >= strlen ( $string )) $offset = — 1 ;
return $code ;
>
?>
$offset is a reference, as it is not easy to split a utf-8 char-by-char. Useful to iterate on a string:
$text = «abcàê߀abc» ;
$offset = 0 ;
while ( $offset >= 0 ) echo $offset . «: » . ordutf8 ( $text , $offset ). «\n» ;
>
/* returns:
0: 97
1: 98
2: 99
3: 224
5: 234
7: 223
9: 8364
12: 97
13: 98
14: 99
*/
?>
Feel free to adapt my code to fit your needs.
10 years ago
Regarding character sets, and whether or not this is «ASCII». Firstly, there is no such thing as «8-bit ASCII», so if it were ASCII it would only ever return integers up to 127. 8-bit ASCII-compatible encodings include the ISO 8859 family of encodings, which map various common characters to the values from 128 to 255. UTF-8 is also designed so that characters representable in 7-bit ASCII are coded the same; byte values higher than 127 in a UTF-8 string represent the beginning of a multi-byte character.
In fact, like most of PHP’s string functions, this function isn’t doing anything to do with character encoding at all — it is just interpreting a binary byte from a string as an unsigned integer. That is, ord(chr(200)) will always return 200, but what character chr(200) *means* will vary depending on what character encoding it is *interpreted* as part of (e.g. during display).
A technically correct description would be «Returns an integer representation of the first byte of a string, from 0 to 255. For single-byte encodings such as (7-bit) ASCII and the ISO 8859 family, this will correspond to the first character, and will be the position of that character in the encoding’s mapping table. For multi-byte encodings, such as UTF-8 or UTF-16, the byte may not represent a complete character.»
The link to asciitable.com should also be replaced by one which explains what character encoding it is displaying, as «Extended ASCII» is an ambiguous and misleading name.