Посчитать байты
Нужно отправить SMS, где лимит не в привычных символах, а в байтах? Или проверить, не выйдет ли поле базы данных за пределы отведённых 255 байт? На глаз такие вещи не определить – одна буква может занимать и 1, и 4 байта в зависимости от кодировки. Вместо ручного пересчёта или гаданий воспользуйтесь онлайн-инструментом, который посчитает байты в тексте с учётом выбранной кодировки.
Онлайн-калькулятор для подсчёта байтов
Калькулятор выше показывает размер текста в байтах, килобайтах и мегабайтах. Достаточно вставить или набрать текст в поле, выбрать кодировку – и вы сразу увидите точное значение. Для удобства рядом отображается общее количество символов: можно сравнить, насколько сильно объём данных превышает число букв.
Для большинства практических задач подойдёт кодировка UTF-8 – она используется на сайтах, в SMS и приложениях. Если вы работаете со старыми системами или базами данных на Windows, переключите кодировку на Windows-1251 – расчёт изменится, потому что правила учёта байтов там другие.
Почему нельзя просто посчитать символы: роль кодировки
Воспринимать количество символов как эквивалент байтов – ошибка, которая может стоить обрезанного сообщения или ошибки в программе. Число байт напрямую зависит от того, какая кодировка используется для представления текста.
UTF-8: переменная длина
В UTF-8 один символ может занимать от 1 до 4 байт:
- латиница, цифры, основные знаки пунктуации – 1 байт;
- кириллица, буквы с диакритикой, греческий алфавит – 2 байта;
- иероглифы CJK, многие символы валют – 3 байта;
- эмодзи, редко используемые символы из расширенных плоскостей – 4 байта.
Например, слово «Привет» из 6 букв в UTF-8 весит 12 байт, а английское «Hello» – всего 5 байт. Добавленный эмодзи «👋» (код U+1F44B) сразу прибавляет 4 байта.
Windows-1251 и ASCII: фиксированная длина
В кодировке Windows-1251 почти все символы занимают ровно 1 байт – и латиница, и русские буквы, и цифры. Так, строка «Привет, мир!» будет весить не 21 байт как в UTF-8, а всего 12 байт. Однако эта кодировка не поддерживает эмодзи, многие специальные знаки и символы других алфавитов.
В чистом ASCII (без расширенной части) доступны только 128 символов – английский алфавит, цифры, управляющие коды. Подсчёт байтов там тривиален: 1 символ = 1 байт, но для русского текста он неприменим вообще.
Как калькулятор считает байты: внутренняя логика
Принцип расчёта, заложенный в калькуляторе, повторяет алгоритм кодирования, описанный в стандарте UTF-8 (RFC 3629). Программа проходит по каждому символу и определяет его код в таблице Unicode:
- U+0000 – U+007F (0–127) → 1 байт
- U+0080 – U+07FF (128–2047) → 2 байта
- U+0800 – U+FFFF (2048–65535) → 3 байта
- U+10000 – U+10FFFF (65536–1114111) → 4 байта
Символы, не входящие в этот диапазон (например, некорректные последовательности), либо отбрасываются, либо заменяются на символ замены (), который занимает 3 байта. Для Windows-1251 подсчёт проще: каждый символ из поддерживаемого набора даёт ровно 1 байт, а недопустимые символы игнорируются или заменяются.
Результат в байтах затем переводится в более крупные единицы по классическому IT-правилу: 1 КБ = 1 024 байта, 1 МБ = 1 024 КБ. Например, текст размером 2 500 байт будет показан как 2,44 КБ.
Когда нужен подсчёт байтов: практические сценарии
- SMS-сообщения. Одно SMS в кодировке GSM-7 вмещает до 160 символов латиницы (140 байт), но русский текст автоматически переключает телефон на UCS-2, где каждый символ занимает 2 байта, и лимит падает до 70 символов. Знание размера в байтах помогает уложиться в одно сообщение или понять, почему оператор снимает плату за два сегмента.
- Базы данных. Поля VARCHAR(N) во многих СУБД задаются в байтах, а не в символах. Для MySQL строка из 50 русских букв в UTF-8 – это 100 байт, что может превысить лимит VARCHAR(80).
- SEO и веб-разработка. Размер HTML-страницы влияет на скорость загрузки. После сжатия gzip считают объём контента, но исходный размер текста в байтах помогает оценить «тяжесть» страницы без сжатия.
- Парсинг и API. При отправке данных по HTTP часто требуется указывать заголовок Content-Length. Точное число байтов в теле запроса позволяет избежать ошибок на стороне сервера.
- Встроенные системы и память. Контроллеры с ограниченной памятью (Arduino) требуют жёсткого учёта каждого байта, особенно при хранении текстовых констант во Flash.
Как перевести байты в другие единицы вручную
Если понадобится пересчитать байты без калькулятора, используйте следующие соотношения (все коэффициенты – 1 024):
- 1 КБ (килобайт) = 1 024 байта
- 1 МБ (мегабайт) = 1 024 КБ = 1 048 576 байт
- 1 ГБ (гигабайт) = 1 024 МБ = 1 073 741 824 байта
Для обратного перевода делите на те же числа. Калькулятор выше выводит все три величины одновременно, так что вам не придётся вспоминать степени двойки.
Информация в статье соответствует распространённым стандартам кодирования и может не учитывать редкие экзотические варианты; при интеграции в критичные системы сверяйтесь с технической документацией.
Часто задаваемые вопросы
Как посчитать байты в тексте без калькулятора?
В чём разница между байтами в UTF-8 и Windows-1251?
Сколько байт в одном килобайте?
Какой максимальный размер текста можно посчитать?
Учитываются ли пробелы и переносы строк при подсчёте байтов?
Можно ли посчитать байты файла, а не просто текста?
Похожие калькуляторы и статьи
- Рассчитайте предел функции онлайн – калькулятор и методы
- Подсчет цифр: онлайн-инструмент и методы для работы с данными
- Калькулятор налогового вычета онлайн – 2026
- Калькулятор перевода единиц измерения – расчет онлайн
- Посчитать символы в строке онлайн – бесплатный калькулятор
- Орел решка случайно: онлайн генератор и вероятности