Что такое Текст в восьмеричный код?

Text to Octal преобразует текст в байтовые значения по основанию 8. Каждый символ становится трёхзначным восьмеричным числом — такие встречаются в правах Unix и escape-последовательностях C.

Каждый символ превращается в число в системе по основанию 8. По умолчанию инструмент кодирует байты UTF-8: три восьмеричных разряда покрывают один байт (от 000 до 377), поэтому в Unix chmod до сих пор задаёт права в восьмеричном виде, а C, Python и shell принимают экранирование \nnn для непечатных байтов. Когда нужен сырой код-пойнт Unicode, включите режим код-пойнта — каждый символ станет одним восьмеричным числом. Оба режима работают и в обратную сторону: вставьте восьмеричное представление, оно проверяется по цифрам 0–7, и возвращается исходный текст.

Как использовать

  1. Введите или вставьте текст, который хотите преобразовать в восьмеричный формат, в поле ввода.
  2. Выберите кодирование (байты UTF-8 или код-пойнт), разделитель (пробел, запятая, тире или перенос строки), стиль префикса (нет, \NNN, 0o или %) и нужно ли дополнять ведущими нулями.
  3. Скопируйте восьмеричный вывод для скриптов или документации. Переключитесь в обратный режим, чтобы преобразовать восьмеричные данные обратно в текст.

Когда использовать

  • Встроить непечатный символ в строковый литерал C как \\NNN.
  • Разобрать конфиг или лог, где байты записаны в восьмеричной форме.
  • Показать на примере, как UTF-8 раскладывает кириллическую букву на несколько восьмеричных триплетов.

Результат

Введите 'Hello' и получите '110 145 154 154 157' (через пробелы) или '\\110\\145\\154\\154\\157' (с обратной косой чертой для строк C).

Частые вопросы

Почему буква «я» даёт сразу несколько восьмеричных чисел?
Всё за пределами ASCII 0–127 хранится в UTF-8 как несколько байтов. «я» занимает два байта (0xD1 0x8F), что в восьмеричном виде равно 321 217. ASCII-символы всегда умещаются в один байт.
Чем отличается вывод с ведущими нулями и без них?
С нулями каждый байт занимает ровно три знака (пробел — это 040, а не 40), как требует фиксированный формат \\NNN в C. Без нулей короче, но соседство с другими цифрами в коде создаёт двусмысленность.
Зачем нужны стили префикса (\110, 0o110, %110)?
Они оборачивают каждое восьмеричное значение, чтобы вставить его прямо в код. Обратная косая (\110\145…) подходит для строковых литералов C, C++ и shell и при компиляции возвращает исходный текст. 0o110 — это восьмеричный литерал, который сразу работает в Python и JavaScript. %110 использует процентную запись для сверки со значениями, закодированными в URL. Оставьте None, чтобы получить простой читаемый список.
Это та же восьмеричная запись, что и в правах chmod?
Основание одно, но chmod кодирует биты прав: каждая цифра упаковывает три бита (чтение, запись, выполнение) для одного класса пользователей. Арифметика восьмеричная, а содержимое — флаги, не символы.
Можно вставить восьмеричный вывод od или hexdump и расшифровать?
Да. Переключитесь в обратный режим и вставьте триплеты, разделённые пробелами, запятыми, переносами строк или с обратными косыми. Инструмент восстанавливает текст, включая многобайтные UTF-8 последовательности. Любая группа с цифрой 8 или 9, а в режиме UTF-8 — со значением выше 0377, сразу подсвечивается, чтобы вы исправили опечатку.

Похожие инструменты