TextArray
100% lokálně

Počítadlo bajtů UTF-8

Změřte skutečnou velikost textu v bajtech UTF-8, jednotkách UTF-16, kódových bodech a grafémech.

Vstup
Výstup

Počítadlo bajtů UTF-8

Počet znaků a velikost v bajtech nejsou totéž. V kódování UTF-8 zabírají písmena bez diakritiky jeden bajt, ale „é" nebo „ž" dva, většina asijských znaků tři a emoji jako 👋 čtyři — zpráva o 160 znacích tak může mít výrazně víc než 160 bajtů. Vložte libovolný text a počítadlo ukáže jeho přesnou velikost v bajtech UTF-8, počet jednotek UTF-16 (to, co v JavaScriptu vrací .length), počet kódových bodů Unicode, počet grafémů (znaků tak, jak je vnímá čtenář — rodina 👨‍👩‍👧 se počítá jako jeden znak) a počet řádků, plus uloženou velikost v B, KB nebo MB pro obě kódování.

Takový přehled rychle zodpoví praktické otázky: vejde se řetězec do sloupce VARCHAR měřeného v bajtech, do segmentu SMS, do limitu 64 KB, do kvóty localStorage? Proč databáze odmítá „160znakový" text a proč jeden systém počítá emoji jako dva znaky a jiný jako jeden? Nástroj staví všechny konkurenční definice „délky" vedle sebe, takže přesně vidíte, kterou váš limit používá.

Na velikosti v bajtech se podílejí i konce řádků: soubor uložený s windowsovými konci CRLF je o jeden bajt na každý řádek větší než tentýž soubor s unixovými LF. Volba konců řádků umožňuje měřit text tak, jak jste ho vložili, nebo jak by vypadal po převodu na LF či CRLF.

Vše se počítá lokálně ve vašem prohlížeči přes standardní API TextEncoder — vložený text se nikam nenahrává, takže klidně měřte i konfigurační soubory, tokeny nebo soukromé zprávy.

Časté dotazy

Proč je počet bajtů vyšší než počet znaků?
UTF-8 má proměnnou šířku: znaky ASCII zabírají 1 bajt, písmena s diakritikou 2, většina asijských znaků 3 a emoji 4. Text s diakritikou je proto v bajtech vždy větší než ve znacích.
Jaký je rozdíl mezi kódovými body a grafémy?
Kódový bod je jedna hodnota Unicode; grafém je to, co čtenář vnímá jako jeden znak. Emoji složené z několika kódových bodů nebo písmena s kombinující diakritikou jsou více kódových bodů, ale jeden grafém.
Které číslo používá limit databázového sloupce?
Záleží na databázi a definici sloupce — VARCHAR v MySQL s utf8mb4 počítá znaky, zatímco řada bajtových limitů (klíče v Redis, velikosti indexů, některá API) počítá bajty UTF-8. Nástroj ukazuje obojí, takže si ověříte ten správný.
Jak konce řádků mění velikost?
Windowsové konce CRLF zabírají dva bajty na zalomení, unixové LF jeden. Přepněte volbu konců řádků a uvidíte velikost textu při uložení v obou konvencích.
Nahrává se můj text někam?
Ne. Počítání běží výhradně ve vašem prohlížeči přes vestavěné API TextEncoder a text nikdy neopustí vaše zařízení.