Конвертеры

Детектор кодировки

Автоматически определите, является ли строка Base64, URL-кодированной, hex или обычным текстом — и декодируйте её.

Результаты определения

Кодировка символов

Текст выглядит как é или Привет? Вставьте его в поле выше — исправленный вариант появится здесь. Чтобы определить кодировку файла, выберите или перетащите его ниже.

или перетащите сюда. Файл читается в браузере и никуда не загружается.

О инструменте «Детектор кодировки»

Принимает строку с неизвестным кодированием и пытается определить, является ли она Base64, URL-encoded, hex или другим распространённым кодированием, затем декодирует её автоматически. Полезно, когда вам дают строку без контекста о том, как она закодирована — из лог-файла, параметра URL, payload API или тикета поддержки. Определение не всегда однозначно, поскольку некоторые строки технически валидны сразу под несколькими схемами кодирования, поэтому результат стоит воспринимать как отправную точку для дальнейшей проверки.

Почему определение может быть неоднозначным: строка вроде SGVsbG8 — валидный Base64, но достаточно короткая hex- или URL-encoded строка иногда тоже проходит базовую проверку формата, не будучи «настоящим» кодированием. Длинные строки определяются автоматически гораздо надёжнее коротких — при длине меньше ~12 символов результат стоит проверить вручную. Если результат декодирования сам оказывается закодированной строкой (двойное кодирование часто встречается в параметрах URL и в некоторых устаревших API), пропустите результат через инструмент повторно.

📖 Подробнее в базе знаний →

Определяет

Base64 (стандарт)
Base64url (URL-безопасный)
URL percent-кодирование
Hex-строка (0-9, a-f)
HTML-сущности (&)
Quoted-printable
Кодировка символов (испорченный текст, файлы)
Обычный текст

Поддерживаемые кодировки

Юникод: UTF-8, UTF-16LE/BE

Кириллица: CP-1251, KOI8-R, KOI8-U, CP-866 (DOS), CP-855, ISO-8859-5, MacCyrillic, MIK

Другие однобайтовые: CP-1250, CP-1252, CP-1253, CP-1254, CP-1255, CP-1256, CP-1257, CP-874, ISO-8859-2, ISO-8859-7, CP-437, Mac Roman

Китайский, японский, корейский: GB2312/GBK, HZ, Big5, Shift_JIS, EUC-JP, ISO-2022-JP, EUC-KR

Транспортные кодировки: Base64, Base64url, URL, Quoted-printable, Hex, HTML entities

Ошибки набора: Неверная раскладка (RU ↔ EN), транслит, 7-битный KOI8

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

Как распознать кодировку на глаз

КодировкаПризнакиПример
Base64A–Z, a–z, 0–9, + и /; длина кратна 4; может заканчиваться на = или ==SGVsbG8gd29ybGQ=
Base64urlТо же, но - и _ вместо + и /; выравнивание = часто отброшеноeyJhbGciOiJIUzI1NiJ9
URL-кодирование (percent-encoding)% и две шестнадцатеричные цифры; + вместо пробела в строке запросаhello%20world%21
HexТолько 0–9 и a–f, чётная длина48656c6c6f

Многослойное кодирование

На практике строки часто закодированы несколько раз: Base64 внутри параметра URL дополнительно проходит percent-encoding, а JWT — это три части Base64url, соединённые точками. Декодируйте по одному слою и снова пропускайте результат через детектор, пока не получите читаемый текст. Для токенов используйте декодер JWT — он разбирает все три части сразу.

«Кракозябры» — это другая проблема

Если вместо текста вы видите что-то вроде привет или Ïðèâåò, дело не в слое кодирования, а в несовпадении кодировки символов:

  • привет — байты UTF-8 прочитаны как Windows-1252 или ISO-8859-1;
  • Ïðèâåò — текст в Windows-1251 (CP1251) прочитан как Latin-1;
  • похожие искажения дают KOI8-R и KOI8-U, если программа ожидает другую кодировку.

Детектор на этой странице проверяет такие варианты для кириллицы (CP1251, KOI8-R, KOI8-U), а также текст, набранный в неправильной раскладке клавиатуры, например ghbdtn вместо «привет».

Исправлять нужно на стороне, которая показывает или хранит текст: укажите charset=utf-8 в HTTP-заголовке Content-Type или в HTML-теге <meta> и убедитесь, что подключение к базе данных тоже использует UTF-8. Заголовки ответа сайта можно посмотреть в проверке HTTP-заголовков.

Короткие строки неоднозначны

Короткая строка может одновременно подходить под несколько форматов: cafe — это и корректный hex, и корректный Base64. Чем длиннее образец, тем надёжнее определение. Если известно, откуда взялась строка, этот контекст обычно решает вопрос.

Чтобы закодировать или декодировать строку в известном формате, используйте Base64 или URL-кодировщик.