Preskočiť na obsah
TextArray
100% lokálne

Počítadlo bajtov UTF-8

Zmerajte skutočnú veľkosť textu v bajtoch UTF-8, jednotkách UTF-16, kódových bodoch a grafémach.

Vstup

Počítadlo bajtov UTF-8

Počet znakov a veľkosť v bajtoch nie je to isté. V kódovaní UTF-8 zaberajú písmená bez diakritiky jeden bajt, ale „é" alebo „ž" dva, väčšina ázijských znakov tri a emoji ako 👋 štyri — správa so 160 znakmi tak môže mať podstatne viac než 160 bajtov. Vložte ľubovoľný text a počítadlo ukáže jeho presnú veľkosť v bajtoch UTF-8, počet jednotiek UTF-16 (to, čo v JavaScripte vráti .length), počet kódových bodov Unicode, počet grafém (znakov tak, ako ich vníma čitateľ — rodina 👨‍👩‍👧 sa počíta ako jeden znak) a počet riadkov, plus uloženú veľkosť v B, KB alebo MB pre obe kódovania.

Takýto prehľad rýchlo zodpovie praktické otázky: zmestí sa reťazec do stĺpca VARCHAR meraného v bajtoch, do segmentu SMS, do limitu 64 KB, do kvóty localStorage? Prečo databáza odmieta „160-znakový" text a prečo jeden systém počíta emoji ako dva znaky a iný ako jeden? Nástroj ukazuje všetky konkurenčné definície „dĺžky" vedľa seba, takže presne vidíte, ktorú váš limit používa.

Na veľkosti v bajtoch sa podieľajú aj konce riadkov: súbor uložený s windowsovými koncami CRLF je o jeden bajt na každý riadok väčší než ten istý súbor s unixovými LF. Voľba koncov riadkov umožňuje merať text tak, ako ste ho vložili, alebo ako by vyzeral po konverzii na LF či CRLF.

Všetko sa počíta lokálne vo vašom prehliadači cez štandardné API TextEncoder — vložený text sa nikam nenahráva, takže pokojne merajte aj konfiguračné súbory, tokeny či súkromné správy.

Časté otázky

Prečo je počet bajtov vyšší než počet znakov?
UTF-8 má premenlivú šírku: znaky ASCII zaberajú 1 bajt, písmená s diakritikou 2, väčšina ázijských znakov 3 a emoji 4. Text s diakritikou je preto v bajtoch vždy väčší než v znakoch.
Aký je rozdiel medzi kódovými bodmi a grafémami?
Kódový bod je jedna hodnota Unicode; graféma je to, čo čitateľ vníma ako jeden znak. Emoji zložené z viacerých kódových bodov alebo písmená s kombinujúcou diakritikou sú viac kódových bodov, ale jedna graféma.
Ktoré číslo používa limit databázového stĺpca?
Závisí od databázy a definície stĺpca — VARCHAR v MySQL s utf8mb4 počíta znaky, zatiaľ čo mnohé bajtové limity (kľúče v Redis, veľkosti indexov, niektoré API) počítajú bajty UTF-8. Nástroj ukazuje oboje, takže si overíte ten správny.
Ako konce riadkov menia veľkosť?
Windowsové konce CRLF zaberajú dva bajty na zalomenie, unixové LF jeden. Prepnite voľbu koncov riadkov a uvidíte veľkosť textu pri uložení v oboch konvenciách.
Nahráva sa môj text niekam?
Nie. Počítanie beží výhradne vo vašom prehliadači cez vstavané API TextEncoder a text nikdy neopustí vaše zariadenie.