Кодирование Base64
Кодирование текста в Base64 и обратно
Кодирует текст в Base64 и декодирует Base64 обратно в текст — с явным переключателем режима и кнопкой копирования результата.
Как это работает
При кодировании текст сначала проходит через кодировщик UTF-8 браузера, поэтому нелатинский текст — эмодзи, грузинский, кириллица — кодируется правильно, а не ломается на символах за пределами базовой латиницы. Декодирование выполняет обратное преобразование и отклоняет результат, не являющийся корректным текстом UTF-8, вместо того чтобы показать испорченные символы как готовый ответ.
Частые вопросы
Почему режим переключается вручную, а не определяется автоматически?
Некоторый текст сам по себе является корректным Base64 — например, короткие слова из букв, входящих в алфавит Base64, — поэтому автоопределение иногда ошибалось бы. Явный переключатель надёжнее догадки.
Почему декодирование завершилось ошибкой?
Либо текст не является корректным Base64 (неподходящие символы или дополнение), либо он декодируется в байты, которые не образуют корректный текст UTF-8. Инструмент рассчитан на текст, поэтому сообщает об ошибке вместо нечитаемой мешанины символов.
Корректно ли обрабатываются нелатинский текст и эмодзи?
Да — перед преобразованием в Base64 текст кодируется в UTF-8, поэтому кириллица, грузинский, эмодзи и другие нелатинские символы проходят туда и обратно без искажений, на чём наивная реализация Base64 обычно спотыкается.
Отправляется ли текст куда-нибудь при кодировании и декодировании?
Нет — оба направления работают целиком в вашем браузере встроенными средствами JavaScript. Ничего не загружается.
Можно ли декодировать Base64 с двоичными данными, например с изображением?
Нет — инструмент исходит из того, что результат должен быть читаемым текстом, и отклоняет всё, что не является корректным UTF-8. Поэтому Base64 двоичных данных вроде изображений будет помечен как некорректный, а не показан набором байтов.