Перейти до вмісту
TextArray
100% локально

Лічильник байтів UTF-8

Вимірюйте реальний розмір тексту в байтах UTF-8, одиницях UTF-16, кодових точках і графемах.

Введення
Вихід

Лічильник байтів UTF-8

Кількість символів і розмір байтів – це не одне й те саме. В UTF-8 звичайні англійські літери займають по одному байту, але «é» займає два, більшість символів CJK займають три, а емодзі, як-от 👋, займає чотири — тому повідомлення із 160 символів може бути набагато більше, ніж 160 байтів. Вставте будь-який текст, і цей лічильник повідомить його точний розмір у байтах UTF-8, одиниці коду UTF-16, які буде повідомляти JavaScript .length, кількість точок коду Unicode, кількість графем (символів, що сприймаються користувачем, тому сімейство 👨‍👩‍👧 вважається одним) і кількість рядків, а також збережений розмір у B, KB або MB для обох кодування.

Ця розбивка швидко відповідає на практичні запитання: чи відповідатиме цей рядок стовпцю VARCHAR(255), виміряному в байтах, сегменту SMS, обмеженню корисного навантаження в 64 КБ, бюджету заголовка HTTP, квоті localStorage? Чому база даних скаржиться на «160-символьний» рядок і чому емодзі вважається двома символами в одній системі та одним в іншій? Лічильник показує всі конкуруючі визначення «довжини» пліч-о-пліч, щоб ви могли точно побачити, яке з них використовує ваш ліміт.

Закінчення рядків також мають значення для розміру байтів: файл, збережений із закінченнями Windows CRLF, на один байт на рядок більший, ніж той самий файл із закінченнями Unix LF. Параметр закінчення рядків дає змогу вимірювати текст як вставлений або як його було б перетворено на LF чи CRLF.

Усе обчислюється локально у вашому браузері за допомогою стандартного TextEncoder API — текст, який ви вставляєте, ніколи не завантажується, тому конфігураційні файли, маркери та приватні повідомлення безпечні для вимірювання.

FAQ

Чому кількість байтів перевищує кількість символів?
UTF-8 — це кодування змінної ширини: літери ASCII займають 1 байт, латинські літери з акцентами — 2, більшість символів CJK — 3 і emoji — 4. Таким чином, будь-який текст, що не є ASCII, має більше байтів, ніж символів.
Яка різниця між кодовими точками та графемами?
Кодова точка — це одне значення Unicode; графема - це те, що читач бачить як один символ. Емодзі, створені з кількох кодових точок, об’єднаних ZWJ, або літер із поєднанням наголосів, є кількома кодовими точками, але однією графемою.
Яке число використовує обмеження стовпця бази даних?
Це залежить від бази даних і визначення стовпця — MySQL utf8mb4 VARCHAR обмежує кількість символів, тоді як багато байтових обмежень (ключі Redis, розміри індексів, деякі API) підраховують байти UTF-8. Цей інструмент показує обидва, щоб ви могли перевірити правильний.
Як змінюють розмір закінчення рядків?
Windows CRLF закінчується по два байти на розрив рядка, Unix LF закінчується один. Перемкніть параметр закінчення рядків, щоб побачити розмір тексту, який буде збережено за будь-якою умовою.
Мій текст десь завантажено?
Ні. Підрахунок повністю виконується у вашому браузері за допомогою вбудованого TextEncoder API, і ваш текст ніколи не залишає ваш пристрій.