Калькулятор размера текста

Узнайте точный размер текста в байтах, килобайтах и символах с учётом кодировки UTF-8. Полезно для лимитов полей и баз данных.

Что делает этот инструмент

Размер текста точно рассчитывает, сколько места занимает ваш текст в байтах, килобайтах и символах, используя кодировку UTF-8, стандартную для Интернета и большинства современных систем. Это тот инструмент, который вам нужен, когда предел измеряется в байтах, а не в символах, что встречается чаще, чем люди ожидают.

Почему байты отличаются от символов

В UTF-8 не каждый символ представляет собой один байт. Простые английские буквы и цифры занимают по одному байту каждая, поэтому для простого текста количество байтов соответствует количеству символов. Но буквы с диакритическими знаками занимают два байта, многие символы и нелатинские символы — два или три, а эмодзи могут занимать четыре. Это означает, что длина строки из 100 символов может превышать 100 байт. Когда система измеряет лимит в байтах, подсчет символов введет вас в заблуждение, этот инструмент показывает реальный размер байта.

Когда размер байта имеет значение

Поля базы данных часто определяются с ограничением в байтах, поэтому значение, которое соответствует символам, все равно может быть отклонено из-за превышения ограничения в байтах. Некоторые API и протоколы измеряют полезную нагрузку в байтах. SMS-сообщения, бюджеты размера файлов и некоторые поля форм — все это учитывает байты. Разработчикам, проверяющим, соответствует ли значение столбцу или находится ли полезная нагрузка в пределах ограничения по размеру, требуется количество байтов, а не количество символов.

Чтение результата

Инструмент отображает три числа, обновляющиеся по мере ввода: общее количество байтов в кодировке UTF-8, эквивалент в килобайтах для более крупного текста и количество простых символов для сравнения. Когда количество байтов и символов расходится, этот разрыв представляет собой содержимое вашего текста, отличное от ASCII, акценты, символы и смайлы, каждый из которых занимает более одного байта. Все рассчитывается в вашем браузере, поэтому даже конфиденциальный текст остается на вашем устройстве.

Символы против байтов

Символ и байт не всегда одно и то же. В простом ASCII один символ равен одному байту, но в UTF-8, стандартной кодировке Интернета, буквы с диакритическими знаками, эмодзи и нелатинские символы занимают два, три или четыре байта каждый. Этот инструмент измеряет как количество символов, так и истинный размер в байтах в кодировке UTF-8. Разница имеет значение, когда ограничение определяется в байтах, а не в символах, что встречается чаще, чем ожидает большинство людей.

Почему размер байта имеет значение

Поля базы данных часто имеют размер в байтах, поэтому предел VARCHAR может быть достигнут меньшим количеством символов, чем ожидалось, если текст содержит многобайтовые символы. Полезная нагрузка сети, ограничения на размер сообщений и квоты хранилища измеряются в байтах. Некоторые API ограничивают тело запроса размером в байтах. Если вам когда-либо приходилось отклонять текст как «слишком длинный», хотя количество символов выглядело нормально, то, вероятно, причиной были многобайтовые символы и байтовое ограничение. Измерение размера байта заранее позволяет избежать этого сюрприза.

UTF-8 и многобайтовые символы

UTF-8 кодирует основные латинские буквы и цифры в один байт каждая, поэтому простой английский текст имеет одинаковое количество символов и байтов. Но «é» — это два байта, многие азиатские символы — три байта, а эмодзи обычно — четыре. Таким образом, строка из 100 символов может иметь длину от 100 до 400 байт в зависимости от ее содержимого. Этот инструмент показывает точный размер в байтах, размер в килобайтах и ​​количество символов вместе, поэтому вы можете точно увидеть, насколько ваш текст соответствует любому пределу, независимо от того, определен ли он в символах или байтах.

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

Почему количество байтов превышает количество символов?
В UTF-8 буквы с диакритическими знаками, символы, нелатинские символы и эмодзи занимают более одного байта каждая. Обычные английские буквы занимают один байт, поэтому значения совпадают только для простого текста ASCII. Разрыв — это ваш контент, отличный от ASCII.
Какую кодировку он использует?
UTF-8 — стандартная кодировка для Интернета и большинства современных систем. Это то, что базы данных, API и браузеры используют по умолчанию, поэтому количество байтов отражает реальный размер хранилища и передачи.
Когда мне нужен размер в байтах вместо количества символов?
Когда лимит измеряется в байтах, полях базы данных, определенных полезных нагрузках API, сегментах SMS и некоторых полях формы. Значение, которое соответствует символам, все равно может превышать ограничение в байтах, поэтому проверка байтов предотвращает отклонение данных.
Сколько байт занимает смайлик?
Большинство смайлов занимают четыре байта в UTF-8, а некоторые комбинации — больше. Вот почему короткая строка с эмодзи может иметь удивительно большой размер в байтах.
Мой текст загружен?
Нет. Расчеты выполняются в вашем браузере, поэтому даже конфиденциальный текст остается на вашем устройстве.
В чем разница между символами и байтами?
В простом ASCII они равны, но в UTF-8, веб-стандарте, буквы с диакритическими знаками, эмодзи и нелатинские символы занимают несколько байтов. Таким образом, строка может содержать больше байтов, чем символов. Этот инструмент показывает оба.
Почему мой текст превышает лимит, хотя количество символов выглядит нормально?
Предел, вероятно, определен в байтах, и ваш текст содержит многобайтовые символы (ударения, эмодзи или нелатинские буквы), каждый из которых занимает более одного байта. Проверьте размер байта, а не только количество символов.
Сколько байт составляет смайлик?
Большинство смайлов имеют размер четыре байта в кодировке UTF-8, а некоторые комбинированные смайлы — больше. Таким образом, один смайлик может занимать столько же места, сколько четыре простых латинских символа, что имеет значение для ограничений на байты.
Измеряет ли это размер в UTF-8?
Да. Количество байтов соответствует кодировке UTF-8, стандарту для Интернета и большинства современных систем, поэтому оно соответствует тому, как базы данных, API и сети будут измерять ваш текст.