Инструмент для разработчиков и вебмастеров

Конвертер кодировок текста

Конвертируйте текст между UTF-8, Windows-1251, KOI8-R, ISO-8859-5 и CP866. Исправляйте кракозябры (mojibake) в один клик. Смотрите hex-дамп и размер текста в каждой кодировке.

5
Кодировок
UTF-8, Win-1251, KOI8-R, ISO-8859-5, CP866
7+
Паттернов mojibake
Автоматическое определение типа искажения
256
Символов в таблице
Полная кодовая таблица каждой кодировки
100%
Офлайн
Вся обработка в браузере, без отправки на сервер

Что такое кодировки текста

Кодировка текста определяет, какому символу соответствует каждый байт в файле. Когда текст открывается не в той кодировке, в которой он был сохранен, вместо букв появляются нечитаемые символы. В русском интернете это явление получило название «кракозябры» (в международной терминологии — mojibake).

01

Однобайтовые кодировки

Windows-1251, KOI8-R, CP866 и ISO-8859-5 используют один байт (0-255) на символ. Каждая может представить не более 256 символов, поэтому они заточены под конкретный язык. Для русского создали несколько несовместимых кодировок, что и породило проблему кракозябр.

U+

Unicode и UTF-8

Unicode решил проблему, присвоив уникальный номер каждому символу всех языков мира (более 150 000 символов). UTF-8 — самый популярный способ записи Unicode: латиница занимает 1 байт, кириллица — 2 байта, иероглифы — 3. Это стандарт современного веба.

?!

Почему возникают кракозябры

Кракозябры появляются, когда программа читает файл не в той кодировке. Байт 0xCF в UTF-8 — часть двухбайтовой буквы «П», а в Windows-1251 — самостоятельный символ «П». Если прочесть UTF-8 текст как Windows-1251, каждая русская буква превращается в два непонятных символа.

Возможности конвертера

Полный набор инструментов для работы с кодировками текста, востребованный разработчиками, вебмастерами и системными администраторами.

🔧

Исправление кракозябр

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

🗄

Миграция баз данных

При переносе данных из старых систем (MySQL в latin1, legacy-приложения на Windows-1251) текст часто повреждается. Конвертер помогает понять, какая цепочка перекодировок произошла, и восстановить данные.

🖥

Работа с legacy-системами

Многие серверы 1С, банковские системы и государственные порталы до сих пор используют Windows-1251 или KOI8-R. Конвертер помогает подготовить данные для обмена между современными и устаревшими системами.

📁

Конвертация файлов

Субтитры в SRT, файлы CSV из Excel, конфигурационные файлы — часто приходят в неожиданной кодировке. Вставьте содержимое в конвертер и получите текст в нужной кодировке за секунду.

📧

Проблемы с email

Письма с кракозябрами — классическая проблема почтовых серверов. Конвертер поможет прочитать такое письмо, определив исходную кодировку отправителя и применив правильную перекодировку.

🔍

Hex-дамп и анализ

Просмотр байтового представления текста в каждой кодировке. Незаменимо для отладки проблем с кодировками в протоколах, API-ответах и бинарных файлах. Сравнивайте размер текста в разных кодировках.

Сравнение кодировок/ таблица совместимости

Все пять кодировок поддерживают базовую латиницу (ASCII, байты 0x00-0x7F) одинаково. Различия начинаются в верхней половине таблицы (0x80-0xFF), где размещены кириллица и специальные символы.

ХарактеристикаUTF-8Win-1251KOI8-RISO-8859-5CP866
Байт на кириллицу21111
Максимум символов1.1M+256256256256
Украинские буквыДаДаНетДаЧастично
ПсевдографикаДаНетДаНетДа
Год создания19931996199319881986
Применение сегодняВездеLegacyРедкоРедкоDOS
Совместимость с ASCIIПолнаяПолнаяПолнаяПолнаяПолная

Рекомендация: всегда используйте UTF-8 для новых проектов. Это стандарт W3C, WHATWG и де-факто стандарт всех современных веб-платформ.

Факт: по данным W3Techs, более 98% всех сайтов в мире используют UTF-8. Для русскоязычных сайтов этот показатель превышает 95%.

История кодировок кириллицы

Путь от хаоса несовместимых кодировок к единому стандарту Unicode занял почти 30 лет. За это время русскоязычный интернет пережил настоящую «войну кодировок».

1980-е

CP866 и эпоха DOS

Кодировка CP866 была создана IBM для MS-DOS. Она включала кириллицу и символы псевдографики для рисования рамок и таблиц в текстовом режиме. На ней работали Norton Commander, Lexicon, а позже — ранние BBS-сети в России. CP866 до сих пор используется в командной строке Windows.

1993

KOI8-R и UNIX-мир

KOI8-R стала стандартом для русскоязычных UNIX-систем и раннего интернета (RFC 1489). Её главное достоинство — при потере старшего бита (частая проблема 7-битных каналов связи) кириллица превращалась в читаемую транслитерацию: «П» (0xF0) становилась «p» (0x70). Сети FIDO и Relcom активно использовали KOI8-R.

1996

Windows-1251 и эра Windows

С массовым распространением Windows 95/98 в России кодировка Windows-1251 (CP1251) стала доминировать. Буквы в ней расположены в алфавитном порядке, что удобно для сортировки. К началу 2000-х большинство русскоязычных сайтов использовали именно Windows-1251. «Войны кодировок» между KOI8-R и Win-1251 были повседневной реальностью веб-мастеров.

2000-е

Переход на UTF-8

Постепенный переход на UTF-8 начался с международных проектов. Русская Википедия перешла на UTF-8 в 2005 году, LiveJournal — в 2006. Gmail изначально использовал UTF-8. К 2010 году большинство новых сайтов создавались уже в UTF-8. Однако старые системы, базы данных и почтовые серверы продолжают хранить данные в Windows-1251, создавая проблемы при интеграции.

2020-е

UTF-8 как стандарт

Сегодня UTF-8 — абсолютный стандарт. HTML5 рекомендует его по умолчанию. Современные базы данных (PostgreSQL, MySQL 8+) используют utf8mb4. Однако проблемы с кодировками не исчезли полностью: старые дампы, импорт из 1С, электронные документы и субтитры к фильмам регулярно требуют перекодировки.

Как избежать проблем с кодировками

Практические советы для разработчиков, вебмастеров и всех, кто работает с текстовыми данными.

1Указывайте кодировку явно

Всегда добавляйте <meta charset="UTF-8"> в HTML, Content-Type: text/html; charset=utf-8 в HTTP-заголовках, и BOM-метку при необходимости. Не полагайтесь на автоопределение браузера — оно часто ошибается.

2Настройте базу данных правильно

В MySQL используйте utf8mb4 (не utf8, который не поддерживает 4-байтовые символы). В PostgreSQL — стандартный UTF-8. Убедитесь, что соединение к базе данных также использует UTF-8 (SET NAMES utf8mb4).

3Проверяйте кодировку файлов

Используйте утилиты вроде file (Linux/macOS) или Notepad++ (Windows) для определения текущей кодировки файла перед обработкой. В hex-редакторе UTF-8 кириллица начинается с байтов 0xD0-0xD1.

4Не перекодируйте дважды

Типичная ошибка — конвертировать текст, который уже в нужной кодировке. Двойная UTF-8 конвертация (UTF-8 прочитан как Windows-1251, затем снова сохранён в UTF-8) создаёт «двойные кракозябры», исправить которые значительно сложнее.

5Единая кодировка в проекте

Настройте IDE, систему контроля версий (git) и CI/CD на использование UTF-8 без BOM. В .editorconfig укажите charset = utf-8. Это предотвратит случайное создание файлов в других кодировках.

6Тестируйте на реальных данных

При импорте данных из внешних источников (CSV, XML, API) всегда проверяйте кириллицу в первую очередь. Используйте тестовые строки с буквами «ё», «Ё», «щ», «ъ» — они чаще всего страдают от некорректной конвертации.

Как пользоваться конвертером

Простая инструкция для двух режимов работы: конвертация кодировок и исправление кракозябр.

1

Выберите режим

Конвертация — для перекодировки текста из одной кодировки в другую. Исправить кракозябры — для восстановления повреждённого текста.

2

Введите текст

Вставьте текст в поле ввода. В режиме конвертации — обычный читаемый текст. В режиме исправления — текст с кракозябрами.

3

Укажите кодировки

В режиме конвертации выберите исходную и целевую кодировки из списка. В режиме исправления кодировки определяются автоматически.

4

Скопируйте результат

Нажмите кнопку «Копировать» рядом с результатом. Включите hex-дамп для просмотра байтового представления текста.

ЧАСТЫЕ ВОПРОСЫ

Часто задаваемые вопросы

Кракозябры — это нечитаемые символы, появляющиеся при открытии текста в неправильной кодировке. Например, когда текст в UTF-8 читается как Windows-1251, каждая русская буква превращается в два непонятных символа. Международный термин — mojibake (от японского 文字化け, «превращение символов»). Наш конвертер автоматически определяет тип искажения и предлагает исправление.
UTF-8 — универсальная кодировка, поддерживающая все символы Unicode (более 150 000). Кириллица занимает 2 байта на символ. Windows-1251 — однобайтовая кодировка Microsoft, поддерживает только 256 символов (латиницу, кириллицу и некоторые специальные символы). UTF-8 совместим с ASCII и стал стандартом современного веба.
Они создавались разными организациями для разных платформ. KOI8-R (RFC 1489, 1993) — для UNIX-систем и раннего интернета, имеет свойство «прозрачной деградации» при потере 8-го бита. Windows-1251 (Microsoft, 1996) — для Windows, с алфавитным расположением кириллицы. Обе содержат полный русский алфавит, но в разных позициях таблицы.
В Linux/macOS используйте команду file --mime-encoding filename. В Windows — откройте файл в Notepad++, кодировка показана в строке состояния. По содержимому: если русский текст выглядит как два нечитаемых символа на букву — скорее всего UTF-8 прочитан как однобайтовая кодировка. Наш конвертер в режиме «Исправить кракозябры» определяет это автоматически.
BOM — это невидимый маркер в начале файла (байты EF BB BF для UTF-8), указывающий на кодировку. UTF-8 BOM не обязателен и может вызывать проблемы: лишние пустые строки в PHP, ошибки парсинга CSV, проблемы с шебангом (#!) в скриптах. Рекомендация W3C — использовать UTF-8 без BOM.
CP866 используется до сих пор в командной строке Windows (cmd.exe). Когда вы запускаете консольную программу, выводящую кириллицу, Windows по умолчанию использует CP866. Это также актуально для работы со старыми программами для DOS, архивами дискет и ретрокомпьютингом.
Двойные кракозябры возникают при двойной перекодировке: UTF-8 → Windows-1251 → UTF-8. Теоретически их можно исправить обратной последовательностью операций. На практике часть информации часто теряется (символы заменяются на «?»). Наш конвертер пробует стандартные комбинации перекодировки, но для сложных случаев может потребоваться ручной анализ hex-дампа.
Да. Вся обработка происходит локально в вашем браузере с помощью JavaScript. Текст не отправляется на сервер, не сохраняется в логах и не передаётся третьим сторонам. Вы можете проверить это в инструментах разработчика браузера (вкладка Network) — при конвертации не происходит никаких сетевых запросов.
Наш онлайн-конвертер работает с текстом, вставленным в поле ввода. Для массовой конвертации файлов используйте утилиту iconv в Linux/macOS (iconv -f cp1251 -t utf-8 input.txt > output.txt) или recode. В Python — функцию open() с параметром encoding. Для Windows — Notepad++ (меню Кодировки → Преобразовать).
В UTF-8 каждая кириллическая буква кодируется двумя байтами (0xD0-0xD1 + второй байт), тогда как в Windows-1251 — одним. Для чисто русского текста UTF-8 файл будет примерно в 1.5-1.8 раза больше. Однако для смешанного текста (русский + латиница, код, JSON) разница минимальна, а преимущества универсальности UTF-8 перевешивают.
Лиана Арифметова
АВТОРverifiedред. calcal.ru

Лиана Арифметова

Создатель и главный редактор

Миссия: демократизировать сложные расчёты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».

Mathematical Engineering · МФТИ · редактирует каталог с 2012 года

Был ли этот калькулятор полезен?

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

Инструмент справочный — не заменяет эксперта

Только для информационных целей. Все расчёты, результаты и данные, предоставляемые инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.

Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.

Профессиональные решения — медицинские, финансовые, инженерные — должны приниматься только после консультации с квалифицированным специалистом. Не используйте автоматический расчёт как единственное основание для важных решений.

Ограничение ответственности. Авторы и разработчики сервиса не несут ответственности за прямой или косвенный ущерб, возникший из-за использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию результатов.

СМЕЖНЫЕ ИНСТРУМЕНТЫ

Похожие калькуляторы

15

Конвертер кириллица ↔ латиница (раскладка)

Исправление текста, набранного в неправильной раскладке. QWERTY ↔ ЙЦУКЕН с автоопределением.

/konverter-raskladki

Конвертер регистра текста

ВЕРХНИЙ ↔ нижний ↔ Каждое Слово ↔ camelCase ↔ snake_case ↔ kebab-case. Все варианты регистра.

/konverter-registra-teksta

Markdown-редактор с превью

Онлайн Markdown-редактор с мгновенным предпросмотром HTML. Панель инструментов, подсветка синтаксиса, экспорт в HTML.

/markdown-editor

Счётчик символов и слов

Подсчёт символов, слов, предложений, абзацев. Время чтения, частота слов, проверка длины SEO-тегов.

/schyotchik-simvolov-slov

Калькулятор времени чтения текста

Расчёт времени чтения и озвучивания текста. Настройка скорости, тип контента, количество страниц A4.

/vremya-chteniya-teksta

Удалитель дублирующих строк

Удаление повторяющихся строк из списка. Поиск уникальных, показ только дубликатов, настройки сравнения.

/udalenie-dublikatov-strok

Сортировщик строк

Алфавитная, числовая, по длине и случайная сортировка списка строк. Удаление пустых строк и дубликатов.

/sortirovshchik-strok

Diff-инструмент для сравнения текстов

Сравнение двух текстов с подсветкой различий. Построчный и пословный diff, режимы отображения side-by-side и unified.

/sravnenie-tekstov-diff

Число прописью (русский)

Число → слова с правильным склонением: рубли, штуки, тонны. Для документов, счетов и актов.

/chislo-propisyu

Генератор Cubic Bezier (CSS transition)

Интерактивный генератор кривых Безье для CSS анимаций. Визуальная настройка плавности переходов, пресеты (ease, linear) и копирование кода.

/cubic-bezier

Regex-тестер с русской документацией

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

/regex-tester-ru

Калькулятор код-ревью: время, размер PR, дефекты, нагрузка

Комплексный калькулятор код-ревью: оценка времени проверки кода, анализ размера PR (XS/S/M/L/XL), покрытие ревью и bus factor, плотность дефектов и escape rate, нагрузка команды ревьюеров, метрики качества (churn, rework, first-pass yield).

/code-review-calculator

Калькулятор теории цвета: гармония, конвертер, палитры, смешивание, дальтонизм

Комплексный инструмент для работы с цветом: цветовые гармонии (комплементарная, аналогичная, триадная, тетрадная), конвертер HEX/RGB/HSL/HSV/CMYK, генератор палитр (монохроматическая, shades, tints, tones), смешивание цветов (аддитивное/субтрактивное), симулятор дальтонизма и анализ цветовой температуры.

/color-theory-calculator

CSV ↔ JSON ↔ XML конвертер

Онлайн конвертация между форматами CSV, JSON и XML. Настройка разделителей, форматирование и автоопределение формата входных данных.

/konverter-csv-json-xml

YAML валидатор и форматтер

Онлайн проверка и форматирование YAML-файлов. Валидация синтаксиса, конвертация YAML ↔ JSON, подсветка ошибок с номерами строк.

/yaml-validator