Что делает инструмент
Этот инструмент показывает байты, из которых состоит текст, и превращает байты обратно в текст. Введите слово и увидите его в двоичном (01001000 01101001), шестнадцатеричном (48 69), десятичном (72 105) или восьмеричном (110 151) виде. Вставьте строку байтов из дампа пакетов, отладчика или домашнего задания и снова прочитайте её как текст.
Все преобразования идут через UTF-8, поэтому инструмент работает с любым языком и с эмодзи, а не только с обычным ASCII. Так легко понять, почему 你好 занимает шесть байтов или почему эмодзи считается за четыре байта в столбце базы данных.
Как пользоваться
- Выберите Текст → байты для кодирования или Байты → текст для декодирования.
- Выберите формат чисел: двоичный, hex, десятичный или восьмеричный.
- При кодировании выберите разделитель между байтами (пробел, нет, запятая или новая строка) и укажите, писать ли hex-буквы в верхнем регистре.
- Введите или вставьте входные данные. Результат обновляется по мере ввода, его можно скопировать или скачать.
Правила декодирования
При декодировании инструмент снисходителен к оформлению:
- Байты можно разделять пробелами, запятыми, точками с запятой или переносами строк в любом сочетании.
- Распространённые префиксы отбрасываются:
0x,\xи%для hex,0bдля двоичного,0oили\для восьмеричного формата. - Длинная последовательность без разделителей разбивается на байты фиксированной ширины: 8 цифр для двоичного, 2 для hex и 3 для восьмеричного или десятичного формата.
- Значение больше 255 или цифра, не относящаяся к формату, выводятся как ошибка с номером строки и столбца.
Пример
Кодирование Hi 你好 в двоичный вид даёт девять байтов: два для Hi, один для пробела и по три для каждого китайского иероглифа. Тот же текст в hex — 48 69 20 e4 bd a0 e5 a5 bd, ровно то, что вы увидели бы в hex-редакторе или в URL в виде %E4%BD%A0.
Когда это полезно
Разработчики используют инструмент, чтобы проверить, как текст хранится на диске или передаётся по сети, сравнить длину строк в байтах и символах и разобраться с «кракозябрами». Студенты — чтобы потренироваться переводить в двоичную и шестнадцатеричную систему вручную и проверить ответы.
Частые вопросы
› Какую кодировку символов использует инструмент?
UTF-8 — кодировку веба. Символы ASCII занимают по одному байту, буквы с диакритикой обычно по два, а китайские, японские или корейские иероглифы — по три. Эмодзи занимают четыре байта.
› Можно ли вставлять байты с префиксами 0x или \x?
Да. При декодировании префиксы 0x, \x и % для hex, 0b для двоичного и 0o для восьмеричного формата удаляются, а пробелы, запятые, точки с запятой и переносы строк работают как разделители.
› Почему появляется ошибка, что байты не являются корректным UTF-8?
Некоторые последовательности байтов не могут встречаться в тексте UTF-8, например одиночный байт FF или обрезанный многобайтовый символ. Проверьте, что скопировали все байты и выбрали правильный формат.
› Загружается ли мой текст на сервер?
Нет. Кодирование и декодирование выполняются в вашем браузере.